0% menganggap dokumen ini bermanfaat (0 suara)
138 tayangan20 halaman

Bab 8 Array

Dokumen tersebut memberikan penjelasan mengenai penggunaan array dalam bahasa pemrograman C dan C++. Ia mendefinisikan array sebagai kumpulan data yang bertipe sama dalam urutan tertentu yang menggunakan indeks. Dokumen tersebut juga mendemonstrasikan contoh penggunaan array satu dan dua dimensi beserta cara mengisi dan menampilkan elemen array.

Diunggah oleh

rafli
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
138 tayangan20 halaman

Bab 8 Array

Dokumen tersebut memberikan penjelasan mengenai penggunaan array dalam bahasa pemrograman C dan C++. Ia mendefinisikan array sebagai kumpulan data yang bertipe sama dalam urutan tertentu yang menggunakan indeks. Dokumen tersebut juga mendemonstrasikan contoh penggunaan array satu dan dua dimensi beserta cara mengisi dan menampilkan elemen array.

Diunggah oleh

rafli
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 20

Nama : Rafli Adiguna Saputra

NIM : D0219525

Inforamatika E

Bab 8 array

Array adalah kumpulan dari nilai data-data yang bertipe sama dalam urutan tertentu yang
menggunakan nama yang sama. Letak atau posisi dari elemen array ditujukan oleh suatu indeks.
Untuk pemrograman C/C++ indeks array dihitung dari nol (0). Untuk mendeklerasikan array
digunakanlah tanda [] (bracket).

tipe_data nama_array [jumlah_elemen];

kita bisa menggunakan array untuk menampung beberapa data bertipe sama kemudian
menampilkannya kembali. Sebagai contoh kasus untuk menampilkan 5 angkat yang sudah di input
melalui keyboard

1 Int x1,x2,x3,x4,x5; Int x1,x2,x3,x4,x5l


2 Scanf(“%i”,&x1); cin>>x1,
3 Scanf(“%i”,&x2); cin>>x2,
4 Scanf(“%i”,&x3); cin>>x3,
5 Scanf(“%i”,&x4); cin>>x4,
6 Scanf(“%i”,&x5); cin>>x5,
7 Printf(“%i”,x1); cout<<x1;
8 Printf(“%i”,x2); cout<<x2;
9 Printf(“%i”,x3); cout<<x3;
10 Printf(“%i”,x4); cout<<x4;
11 Printf(“%i”,x5); cout<<x5;

Dengan cara di atas sebenarnya program tersebut sudah memenuhi kebutuhan tetapi apabila angka
yang di inginkan ditampung ada 1000 buah bilangan, apa yang terjadi? Apabila ada 1000 buah angka
yang ingin ditampung maka dibutuhkan sebanyak 1000 variabel dan 1000 buah instruksi input dan
outpun.

Mengisi dan menampilkan Elemen Array


ada 2 buah cara untuk mengisi dan menampilkan array
1. Mengisi dan menampilkan array secara langsung cara yang pertama ini efektif untuk
menyelesaikan permasalahan yang tidak mengandung banyak variable yang
dibutuhkan
// mengisi array
Nama_array[indeks] = nilai_elemen;
// menampilkan array
printf(“%format”,nama_array[indeks]);
Atau
cout<<nama_array[indeks];
Contoh Program array C

1 //Program 8.1
2 //Nama File : contohnyaarray.c
3 //Program contoh array C
4
5 #include <studio.h>
6 #include <stdlib.h>
7
8 Int main (int argc, char*argv[])
9 {
10 Int x[5]; //deklarasi array
11 Printf(“Masukkan Nilai 1 : “);
12 Scanf(“%i”, &x[0]);
13 Printf(“Masukkan Nilai 2 : “);
14 Scanf(“%i”, &x[1]);
15 Printf(“Masukkan Nilai 3 : “);
16 Scanf(“%i”, &x[2]);
17 Printf(“Masukkan Nilai 4 : “);
18 Scanf(“%i”, &x[3]);
19 Printf(“Masukkan Nilai 5 : “);
20 Scanf(“%i”, &x[4]);
21 Printf(“\n”);
22
23 Printf(“Nilai ke-1 = %i\n”,x[0]);
24 Printf(“Nilai ke-2 = %i\n”,x[1]);
25 Printf(“Nilai ke-3 = %i\n”,x[2]);
26 Printf(“Nilai ke-4 = %i\n”,x[3]);
27 Printf(“Nilai ke-5 = %i\n\n”,x[4]);
28
29 Return 0;
30 }

1 //Program 8.1
2 //Nama File: Contoharray.cpp
3 //Program contoh array C++
4
5 #include <cstdlib>
6 #include <iostream>
7
8 Using namespace std;
9
10 In main(int argc, char *argv[])
11 {
12 Int x[5];
13 Cout<<”masukkan Nilai 1 : “;
14 Cin>>x[0];
15 Cout<<”masukkan Nilai 2 : “;
16 Cin>>x[1];
17 Cout<<”masukkan Nilai 3 : “;
18 Cin>>x[2];
19 Cout<<”masukkan Nilai 4 : “;
20 Cin>>x[3];
21 Cout<<”masukkan Nilai 5 : “;
22 Cin>>x[4];
23 Cout>>endl;
24
25 Cout<<”Nilai ke-1= “<<x[0]<<endl;
26 Cout<<”Nilai ke-2= “<<x[1]<<endl;
27 Cout<<”Nilai ke-3= “<<x[2]<<endl;
28 Cout<<”Nilai ke-4= “<<x[3]<<endl;
29 Cout<<”Nilai ke-5= “<<x[4]<<endl<<endl;
30
31 Return EXIT_SUCCESS;
32 }

Hasil Eksekusi

Masukkan Nilai 1 : 10
Masukkan Nilai 2 : 20
Masukkan Nilai 3 : 30
Masukkan Nilai 4 : 40
Masukkan Nilai 5 : 50

Nilai Ke-1= 10
Nilai Ke-2= 20
Nilai Ke-3= 30
Nilai Ke-4= 40
Nilai Ke-5= 50

2. Mengisi dan menampilkan array dengan menggunakan perulangan

1 //Program 8.2
2 //Nama File : arrayulang.c
3 //Program contoh array dengan pengulangan C
4
5 #include <stdio.h>
6 #include <stdlib.h>
7
8 Int main(int argc, char*argv[])
9 {
10 Int x[5],I;
11 For(i=0; i<=4; i++)
12 {
13 Printf(“Masukkan Nilai %i: “,i+1);
14 Scanf(“%i”,&x[i]);
15 }
16 Printf(“\n”)l
17
18 For(i=0; i<=4; i++)
19 {
20 Printf(“Nilai Ke-%i=%i\n”,i+1,x[i]);
21 }
22 Printf(“\n”);
23
24 Return 0;
25 }

1 //Program 8.2
2 //Nama File : arrayulang.cpp
3 //Program contoh array dengan pengulangan C++
4
5 #include <cstdlib>
6 #include <iostream>
7
8 Using namespace std;
9
10 Int main(int argc, char*argv[])
11 {
12 Int x[5],I;
13 For(i=0; i<=4; i++)
14 {
15 Cout<<”Masukkan Nilai”<<i+1
16 <<”: “,cin>>x[i];
17 }
18 Cout<<endl;
19 For(i=0; i<=4; i++)
20 {
21 Cout<<Nilai ke-“<<i+1
22 <<”= “<<x[i]<<endl;
23 }
24 Cout<<endl;
25
26 Return EXIT_SUCCES
27 }
Hasil Eksekusi

Masukkan Nilai 1: 1
Masukkan Nilai 1: 2
Masukkan Nilai 1: 3
Masukkan Nilai 1: 4
Masukkan Nilai 1: 5

Nilai ke-1 = 1
Nilai ke-2 = 2
Nilai ke-3 = 3
Nilai ke-4 = 4
Nilai ke-5 = 5

Menginisialisasi Array
Untuk mengisi elemen array tidak harus melalui input nilai tetapi bisa juga dilakukan pada
saat mendeklarasikannya
Tipe_data nama_array[n]={nilai_1,nilai_2,nilai_3, . . . .,nilai_n);

1 //Program 8.3
2 //Nama File : inisialisasiarray.c
3 //Program inisialisasi array C
4
5 #include <stdio.h>
6 #include <stdlib.h>
7
8 Int main(int argc, char*argv[])
9 {
10 Int x[5]={1,2,3,4,5};
11 Int I;
12
13 For(i=0; i<=4; i++)
14 {
15 Printf(“x[%i] default= %i\n”,i,x[i]);
16 }
17
18 X[2]=30;
19 X[3]=40;
20 Printf(“\n”);
21
22 For(i=0; i<=4; i++)
23 {
24 Printf(“x[%i]=%i\n”,i,x[i]);
25 }
26 Printf(“\n”);
27
28 Return 0;
29 }

1 //Program 8.3
2 //Nama File : Inisialisasiarray.cpp
3 //Program Inisialisasi array C++
4
5 #include <cstdlib>
6 #include <iostream>
7
8 Using namespace std;
9
10 Int main(int argc, char*argv[])
11 {
12 Int x[5]={1,2,3,4,5};
13 Int I;
14
15 For(i=0; i<=4; i++)
16 {
17 Cout<<”x[“<<i<<”] default=”
18 <<x[i]<<endl;
19 }
20
21 X[2]=30;
22 X[3]=40;
23 Cout<<endl;
24
25 For(i=0; i<=4; i++)
26 {
27 Cout<<”x[“<<i<<”]=”
28 <<x[i]<<endl;
29 }
30 Cout<<endl;
31
32 return EXIT_SUCCES;
33 }

Hasil Eksekusi:

X[0] default = 1
X[1] default = 2
X[2] default = 3
X[3] default = 4
X[4] default = 5
X[0] = 1
X[1] = 2
X[2] = 3
X[3] = 4
X[4] = 5

Array dari Karakter


Untuk mendeklarasikan kumpulan karakter (string) digunakan array bertipa char.
Char nama_array[jumlah_elemen];
char nama_array[n]=”nilai_1-nilai_n-1”;
Contoh Program C dan C++

1 //Program 8.4
2 //Nama File: chararry.c
3 //Program Array of characters C
4
5 #include <stdio.h>
6 #include <stdlib.h>
7
8 Int main(int argc, char*argv[])
9 {
10 Int I;
11 Char nama[5]={‘A’,’d’,’@’,’m’,’\0’};
12 Char nama2[5]=”Ad@m”;
13 Prinf(“Array per karakter = “);
14
15 For(i=0; i<=4; i++)
16 {
17 Printf(“%c”,nama[i]);
18 }
19
20 Printf(“\n”);
21 Printf(“Array String= %s\n\n”, nama2);
22
23 Return 0;
24 }

1 //Program 8.4
2 //Nama File : chararry.cpp
3 //Program array of characters C++
4
5 #include <cstdlib>
6 #include <iostream>
7
8 Using namespace std;
9
10 Int main(int agrc, char*argv[])
11 {
12 Int I;
13 Char nama[5]={‘A’,’d’,’@’,’m’,’\0’};
14 Char nama2[5]=”Ad@m”;
15 Cout<<”Array per karakter = “;
16
17 For(i=0; i<=4; i++)
18 {
19 Cout<<nama[i];
20 {
21 Cout<<endl;
22
23 Cout<<”Array String=”
24 <<nama2<<endl<<endl;
25
26 Return EXIT_SUCCES
27 }

Hasil Eksekusi

Array per karakter = Ad@m


Array string = Ad@m

Array Berdasarkan Dimensi


1. Array 1 dimensi
2. Array 2 dimensi
3. Array 3 dimensi
Array 1 dimensi
Array yang hanya memiliki 1 subscript
Tipe_data nama_array[jumah_elemen];
Contoh Program

1 //Program 8.5
2 //Nama File : arraysatudimensi.c
3 //Program array satu dimensi C
4
5 #include <stdio.h>
6 #include <stdlib.h>
7
8 Int main(int argc, char*argv[])
9 {
10 Float nilai[10];
11 Int x,y;
12
13 Printf(“mau berapa data [1..10]: “);
14 Scanf(“%i”,&y);
15
16 For(x=0; x<y; x++)
17 {
18 Printf(“nilai ke-%i :”,x+1);
19 Scanf(“%f”,&nilai[x]);
20 }
21 Printf(“\n”);
22
23 For(x=0; x<y; x++)
24 {
25 Printf(“nilai ke-%i : %.2f\n”, x+1,nilai[x]);
26 }
27 Printf(“\n”);
28
29 Return 0;
30 }

1 //Program 8.5
2 //Nama file: arraysatudimensi.cpp
3 //Program array satu dimensi C++
4
5 #include <cstdlib>
6 #include <iostream>
7 #include <iomanip>
8
9 Using namespace std;
10
11 Int main(int argc, char*argv[])
12 {
13 Float nilai[10];
14 Int x,y;
15 Cout<<”mau berapa data [1 … 10]: “;
16 Cin>>y;
17 For(x=0; x<y; x++)
18 {
19 Cout<<”nilai ke-“<<x+1<<” : “;
20 Cin>>nilai[x];
21 }
22 Cout<<endl;
23 Cout<<setiosflags(ios::fixed);
24
25 For(x=0; x<y; x++)
26 {
27 Cout<<”Nilai ke-“
28 <<setprecision(2)<<x+1<<”:”
29 <<nilai[x]<<endl;
30 }
31 Cout<<endl;
32
33 Return EXIT_SUCCES
34 }

Hasil Eksekusi

Nilai ke-1 : 1
Nilai ke-2 : 2
Nilai ke-3 : 3

Nilai ke-1 : 1.00


Nilai ke-2 : 2.00
Nilai ke-3 : 3.00

Array 2 Dimensi
Array dua dimensi memiliki 2 subscript dan mempunyai dimensi pertama sebagai
baris dan dimensi ke dua sebagai kolom.
Tipe_data nama_array[elemen_baris][elemen_kolom];
Contoh Program C dan C++

1 //program 8.7
2 //Nama file : matriks.c
3 //program array dua dimensi
4 //dalam bentuk matriks c
5
6 #include <stdio.h>
7 #include <stdlib.h>
8 #iclude <conio2.h>
9
10 Int main(int argc, char*argv[])
11 {
12 //matriks 3 baris 3 kolom
13 Int a[3][3];
14 Int b[3][3];
15 Int c[3][3];
16 Int i,j;
17
18 //input
19 Printf(“matriks pertama\n”);
20 Printf(“-------------“;
21 For(i=0;i<3;i++)
22 {
23 For(j=0;j<3;j++)
24 {
25 Gotoxy(j*5+1,i+3);
26 Scanf(“%i”,&a[i][j]);
27 }
28 }
29 Printf(“\n”);
30
31 Printf(“Matriks kedua\n”);
32 Printf(“-------------“);
33 For(i=0;i<3;i++)
34 {
35 For(j=0;j<3;j++)
36 {
37 Gotoxy(j*5+1,i+9);
38 Scanf(“%i”,&b[i][j]);
39 }
40 }
41
42 //proses
43 For(i=0;i<3;i++)
44 {
45 For(j=0;j<3;j++)
46 {
47 C[i][j]=a[i][j]+b[i][j];
48 }
49 }
50
51 //output
52 System(“cls”);
53 Printf(“matriks hasil\n”);
54 Printf(“---------------“);
55 For(i=0;i<3;i++)
56 {
57 For(j=0;j<3;j++)
58 {
59 Gotoxy(j*5+1,i+3)’
60 Printf(“%i”,c[i][j];
61 }
62 }
63 Printf(“\n\n”);
64
65 return 0;
66 }
1 //Program 8.7
2 //Nama File:matriks.cpp
3 //program array dua dimensi
4 //dalam bentuk matriks C++
5
6 #include <cstdlib>
7 #include <iostream>
8 #incude <conio2.h>
9
10 using namespace std;
11
12 int main(int argc, char *argv[])
13 {
14 //matriks 3 baris 3 kolom
15 Int a[3][3];
16 Int b[3][3];
17 Int c[3][3];
18 Int I,j;
19
20 //input
21 Cout<”matriks pertama<<endl;
22 Cout<<”--------------------------“;
23 For(i=o;i<3;i++)
24 {
25 For(j=0;j<3;J==)
26 {
27 Gotoxy(j*5+1,i+3);
28 Cin>>a[i][j];
29 }
30 }
31 Cout<<endl;
32
33 Cout<<”matiks kedua”<<endl;
34 Cout<”------------------“;
35 For(i=0;i<3;i++)
36 {
37 For(j=0;j<3;j++)
38 {
39 Gotoxy(j*5+1,i+9);
40 Cin>>b[i][j];
41 }
42 }
43
44 //proses
45 For(i=0;i<3;i++)
46 {
47 For(j=0;j<3;j++)
48 {
49 C[i][j]=a[i][j]+b[i][j];
50 }
51 }
52
53 //output
54 System(“cls”);
55 Cout<<”matriks hasil”<<endl;
56 Cout<<”-----------------“;
57 For(i=0;i<3;i++)
58 {
59 For(j=0;j<3;j++)
60 {
61 Gotoxy(j*5+1,i+3)
62 Cout<<c[i][j];
63 }
64 }
65 Cout<<endl<<endl;
66
67 Return EXIT_SUCCES
68 }

Hasil eksekusi

Matriks pertama
----------------------
1 1 1
1 1 1
1 1 1

Matriks kedua
--------------------
2 2 2
2 2 2
2 2 2

Matriks Hasil
------------------
3 3 3
3 3 3
3 3 3
Char nama_array[jumlah_string_tampung][jumlah_char];
Cara mengisi dan memanggil elemennya hanya cukup menggunakan subscript pertama saja.
Untuk lebih jelasnya buat program berikut

1 //program 8.8
2 //nama file:arraystring.cpp
3 //program array dua dimensi untuk string c++
4
5 #include <cstdlib>
6 #include <iostream>
7
8 Using namespace stdl
9
10 Int main(int argc, char*argv[])
11 {
12 Char hari[7][10];
13 Int I;
14 For(i=0;i<7;i++)
15 {
16 Cout<<”hari ke-“”<<i+1<<”:”;
17 Cin>>hari[i];
18 }
19 Cout<<endl;
20
21 For(i=0;i<7;i++)
22 {
23 Cout<<”hari ke-“<<i+1<<”:”<<hari[i]<<endl;
24 }
25 Cout<<endl<<endl;
26
27 Return EXIT_SUCCES
28 }

Hari ke-1 : senin


Hari ke-2 : selasa
Hari ke-3 : rabu
Hari ke-4: kamis
Hari ke-5 : jumat
Hari ke-6 : sabtu
Hari ke-7 : minggu
Hari ke-1 : senin
Hari ke-2 : selasa
Hari ke-3 : rabu
Hari ke-4: kamis
Hari ke-5 : jumat
Hari ke-6 : sabtu
Hari ke-7 : minggu

Array Tiga Dimensi


ArrayI tiga dimensi mempunyai tiga subscript.
Tipe_data nama_array[sub1][sub2][sub3];
Atau
Char nama_array[elemen_baris][elemen_kolom][jumlah_char];

1 //program 8.9
2 //nama file: arraytigadimensi.c
3 //program array tiga dimensi C
4
5 #include <stdio.h>
6 #include <stdlib.h>
7
8 Int main(int argc, char*argv[])
9 {
10 Char nama[2][2][10];
11 Int I,j;
12 For(i=0;i<2;i++)
13 {
14 For(j=0;j<2;j++)
15 {
16 Printf(“nama[%i][%i]:”,i+1,j+1);
17 Flush(stdin);
18 Get(nama);
19 }
20 Printf(“\n”);
21 }
22
23 For(i=0;i<2;i++)
24 {
25 For(j=0;j<2;j++)
26 {
27 Printf(“nama[%i][%i]:%s\n”,i+1,j+1;
28 Nama[i][j];
29 }
30 }
31 Printf(“\n”);
32
33 Return 0;
34 }

1 //program 8.9
2 //nama file: arraytigadimensi.cpp
3 //program array tiga dimensi c++
4
5 #include <cstdlib>
6 #include <iostream>
7
8 Using namespace std;
9
10 Int main(int argc, char*argv[])
11 {
12 Char nama[2][2][10];
13 Int I,j;
14 For(i=0;i<2;i++)
15 {
16 For(j=0;j<2;j++)
17 {
18 Cout<<”nama[“<<i+1<<”][“<<j+1<<”];
19 Cin>>nama[i][j];
20 }
21 Cout<<endl;
22 }
23 For(i=0;i<2;i++)
24 {
25 For(j=0;j<2;j++)
26 {
27 Cout<<”nama[“<<i+1<<”][“<<j+1<<”];
28 <<nama[i][j];<<endl;
29 }
30 }
31 Cout<<endl;
32 System(“PAUSE”);
33 Return EXIT_SUCCES
34 }
Hasil eksekusi
Nama[1][1] : Adam
Nama[1][2] : Elisa

Nama[2][1] : Rio
Nama[2][2] : Iva

Nama [1][1] ; Adam


Nama [1][2] : Elisa
Nama [2][1] : Rio
Nama [2][2] : Iva

Array Sebagai Parameter Fungsi


Ada sedikit perbededaan ketika array dijadikan parameter yaitu subscriptnya tidak terisi ([])
supaya bisa di ubah melalui fungsi yang lain.

1 //program 8.10
2 //nama file : arrayparameter.c
3 //program array sebagai parameter fungsi C
4
5 #include <stdio.h>
6 #include <stdlib.h>
7
8 Void inpu_array(int bil[], int banyak_data)
9 {
10 Int I;
11 For(i=0;i<banyak_data;i++)
12 {
13 Printf(“Nilai bil[%i] : “,i+1);
14 Scanf(“%i,&bil[i]);
15 }
16 }
17
18 Int jumlah_elemen(int bil[],int banyak_data)
19 {
20 Int I,jumlah=0;
21 For(i=0;i<banyak_data;i++)
22 {
23 Jumlah=jumlah+nil[i];
24 }
25 Return jumlah;
26 }
27
28 Int main(int argc, char*argv[])
29 {
30 Int bil[100];//maksimal elemen
31 Int banyak_data;
32 Int jumlah;
33 Printf(“mau berapa elemen : “);
34 Scanf(“%i,&banyak_data”);
35 Print(“\n”):
36
37 //memanggil void input_array
38 Input_array(bil,banyak_data);
39
40 //memanggil fungsi jumlah_elemen
41 Jumlah=jumlah_elemen(bil,banyak_data);
42
43 Printf(“\n”);
44 Printf(“hasil penjumlahan = %i\n\n”,jumlah);
45
46 Return 0;
47 }

1 //program 8.10
2 //nama file:arrayparameter.cpp
3 //program array sebagai parameter fungsi c++
4
5 #include <cstdlib>
6 #include <iostream>
7
8 Using namespace std;
9
10 Void input_array(int bil[], int banyak_data)
11 {
12 Int I;
13 For(i=0;i<banyak_data;i++)
14 {
15 Cout<<”nilai bil[“<<i+1<<”]: “;
16 Cin>>bil[i];
17 }
18 }
19
20 Int jumlah_elemen(int bil[], int banyak_data)
21 {
22 Int i,jumlah=0;
23 For(i=0;i<banyak_data;i++)
24 {
25 Jumlah=jumlah+bil[i];
26 }
27 Return jumlah;
28 }
29
30 Int main(int agrc, char*argv[])
31 {
32 //maksimal elemen
33 Int bil[100];
34 Int banyak_data;
35 Int jumlah;
36
37 Cout<<”mau berapa elemen: “;
38 Cin>>banyak_data;
39 Cout<<endl;
40
41 //memanggil void input_array
42 Input_array)bil,banyak_data);
43
44 //memanggil fungsi jumlah_elemen
45 Jumlah=jumlah_elemen(bil,banyak_data);
46
47 Cout<<endl;
48 Cout<<”hasil penjumlahan elemen=”
49 <<jumlah<<endl<<endl;
50
51 Return EXIT_SUCCES
52 }

Hasil eksekusi
Mau berapa elemen : 5
Nilai bil[1] ; 1
Nilai bil[2] ; 2
Nilai bil[3] ; 3
Nilai bil[4] ; 4
Nilai bil[5] ; 5
Hasil Penjumlahan elemen = 15

Anda mungkin juga menyukai