450 likes | 711 Views
Array. BY. HARIFUDDIN. Pendahuluan. Array adalah sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe yang sama Setiap data menempati lokasi atau alamat yang berbeda dan disebut elemen array Indeks array selalu dimulai 0 bukan 1 Deklarasi:
E N D
Array BY HARIFUDDIN
Pendahuluan • Array adalah sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe yang sama • Setiap data menempati lokasi atau alamat yang berbeda dan disebut elemen array • Indeks array selalu dimulai 0 bukan 1 Deklarasi: Tipe_data nama_array[jumlah_elemen];
Mengisi Nilai ke Elemen Array • Mengisikan nilai ke elemen-elemen array bisa dilakukan secara langsung tapi hal ini tidak efisien Contoh: A[0]=10 A[1]=20 ….. dst • Cara yang umum digunakan untuk mengisi niai elemen array ialah dengan pengulangan (Looping). Contoh: for(int C=0; C<25; C++){ cout<<“A[“<<C<<“]= “; cin>>A[C]; }
Contoh Program //Program Aplikasi Mengisi Nilai Ke elemen Array #include<iostream> using namespace std; main(){ /*Mendeklarasikan array A dengan 5 buah elemen bertipe integer*/ int A[5]; /*Mendeklarasikan array A dengan 5 buah elemen bertipe integer*/ for(int C=0; C<5; C++){ cout<<"A["<<C<<"]="; cin>>A[C]; } return 0; }
Menampilkan Nilai Array • Konsepnya sama dengan mengisi nilai ke elemen array yaitu dengan menggunakan pengulangan
Contoh Program // Program Aplikasi Menampilkan Nilai Array #include <iostream> using namespace std; main() { // Mendeklarasikan array A dengan 5 buah elemen bertipe int int A[5]; // Mengisikan nilai ke dalam elemen array cout<<"Masukkan nilai yang diinginkan"<<endl; for (int C=0; C<5; C++) { cout<<"A["<<C<<"] = "; cin>>A[C]; } cout<<'\n'; // Menampilkan nilai yang terdapat dalam elemen array cout<<"Menampilkan nilai yang telah dimasukkan"<<endl; for (int J=0; J<5; J++) { cout<<"Nilai yang terdapat pada elemen ke-"; cout<<J+1<<" : "<<A[J]<<endl; } return 0; }
Melakukan Inisialisasi Array • Saat mendeklarasikan sebuah array dapat dilakukan inisialisasi nilai terhadap elemen-elemen array • Hal tersebut dimaksudkan untuk mengisikan nilai default pada elemen array sehingga jika elemen yang bersangkutan tidak diisi dengan nilai baru maka nilai yang digunakan adalah nilai yang telah ada. Deklarasi: tipe_data nama_array[N]={nilai1,..,nilaiN};
Contoh Program // Mudah & Cepat Menjadi MASTER C++ #include <iostream> using namespace std; main() { // Mendeklarasikan array dan langsung menginisialisasi nilainya int A[5] = { 10, 20, 30, 40, 50 }; // Menampilkan nilai yang terdapat pada elemen array cout<<"Sebelum dilakukan perubahan nilai"<<endl; cout<<"A[0] = "<<A[0]<<endl; cout<<"A[1] = "<<A[1]<<endl; cout<<"A[2] = "<<A[2]<<endl; cout<<"A[3] = "<<A[3]<<endl; cout<<"A[4] = "<<A[4]<<endl; // Mengubah elemen ke-1 dan ke-2 A[0] = 12; A[1] = 25; // Menampilkan kembali nilai yang terdapat pada elemen array cout<<"Setelah dilakukan perubahan nilai"<<endl; cout<<"A[0] = "<<A[0]<<endl; cout<<"A[1] = "<<A[1]<<endl; cout<<"A[2] = "<<A[2]<<endl; cout<<"A[3] = "<<A[3]<<endl; cout<<"A[4] = "<<A[4]<<endl; return 0; }
Melakukan Pencarian Pada Elemen Array • Salah satu permasalahan saat menggunakan array ialah tuntutan untuk melakukan pencarian elemen array Misalnya: Pencarian nama Sri Wahyuningsih, mahasiswa perguruan tinggi UNM
Contoh Program //Program Aplikasi Pencarian data pada elemen array #include <iostream> using namespace std; main() { /* Mendeklarasikan array dengan melakukan inisialisasi nilai ke dalamnya*/ int A[10] = { 12, 24, 13, 25, 10, 13, 21, 20, 15, 18 }; int BIL; // Variabel untuk menampung nilai yang akan dicari /* Menampilkan nilai yang terdapat pada elemen-elemen array di atas*/ for (int C=0, C<10; C++) { cout<<A[C]<<endl; } cout<<endl; // Memasukkan nilai yang akan dicari cout<<"Masukkan nilai yang akan dicari : "; cin>>BIL; // Melakukan pencarian data for (int J=0; J<10; J++) { if (A[J] == BIL) { cout<<"Nilai yang dicari terdapat pada indeks ke-"<<J; break; } } return 0; }
Mengurutkan Elemen Array • Elemen array dapat diurutkan dengan beberapa metode, di antaranya; • Metode Gelembung (Bubble Sort) • Metode Maksimum-Minimum (maximum-minimum sort) • Kegunaan suatu pengurutan data ialah mempermudah dan mempercepat proses pencarian data
Pengurutan Data Dengan Metode Gelembung //Program aplikasi urut data menggunakan metode gelembung #include <iostream> using namespace std; main() { /* Mendeklarasikan array dengan 8 buah elemen yang bertipe int*/ int A[8]; int j, k, C, m; cout<<"Masukkan nilai pada elemen array :"<<endl; for (C=0; C<8; C++) { cout<<"A["<<C<<" ] = "; cin>>A[C]; } // Menampilkan nilai sebelum diurutkan cout<<"\nNilai elemen array sebelum diurutkan :"<<endl; for (C=0; C<8; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; } // Melakukan pengurutan elemen array dengan metode gelembung for (j=0; j<7; j++) { for (k=8; k>0; k--) { if (A[k] < A[k-1]) { m = A[k]; A[k] = A[k-1]; A[k-1] = m; } } } // Menampilkan nilai setelah diurutkan cout<<"\nNilai elemen array setelah diurutkan :"<<endl; for (C=0; C<8; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; } return 0; }
Pengurutan Data Dengan Metode Maksimum-Minimum //Program aplikasi mengurutkan data menggunakan metode maksimum-minimum #include <iostream> using namespace std; main() { /* Mendeklarasikan array dengan 7 buah elemen yang bertipe int*/ int A[7]; int j, k, C, m; // Memasukkan nilai array cout<<"Masukkan nilai pada elemen array :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<" ] = "; cin>>A[C]; } // Menampilkan nilai sebelum diurutkan cout<<"\nNilai elemen array sebelum diurutkan :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; } /* Melakukan pengurutan elemen array dengan metode maksimum-minimum*/ int jmaks, U=6; for (j=0; j<6; j++) { jmaks = 0; for (k=1; k<=U; k++) { if (A[k] > A[jmaks]) { jmaks = k; } } m = A[U]; A[U] = A[jmaks]; A[jmaks] = m; U--; } // Menampilkan nilai setelah diurutkan cout<<"\nNilai elemen array setelah diurutkan :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; } return 0; }
Array yang Bersifat Konstan • Nilai dalam elemen array dapat dibuat tetap, yaitu dengan mendefinisikannya sebagai konstanta • Kata kunci yang digunakan ialah const di depan nama array yang didefinisikan.
Contoh Program //Program Aplikasi Array yang Bersifat Konstan #include <iostream> using namespace std; main() { // Mendeklarasikan array yang bersifat konstan const int A[5] = { 10, 20, 30, 40, 50 }; // Menampilkan nilai yang terdapat pada array A for (int C=0; C<5; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; } return 0; }
Array Sebagai Tipe Data Bentukan • Fungsinya untuk memberikan nama lain dari array yang dideklarasikan • Kata kunci yang digunakan ialah typedef Deklarasi: typedef tipe_data nama_array[jumlah_elemen];
Contoh Program //Program aplikasi array sebagai tipe data bentukan #include <iostream> using namespace std; main() { // Mendeklarasikan tipe data berbentuk array dengan nama LARIK typedef int LARIK[5]; // Menggunakan tipe data LARIK untuk mendeklarasikan variabel A LARIK A; int C; // Variabel bantu untuk melakukan pengulangan // Mengisikan nilai elemen ke dalam variabel A for (C=0; C<5; C++) { A[C] = (C+1) * 100; } // Menampilkan nilai elemen yang terdapat pada variabel A for (C=0; C<5; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; } return 0; }
Array dari Karakter • Kumpulan karakter disebut dengan string (teks) Deklarasi: char nama_array[jumlah_elemen]; Contoh: char Teks[5]={‘B’, ’u’, ’d’, ’i’, ’\0’}; • Karakter ‘\0’ disebut dengan karakter null, yaitu karakter yang digunakan sebagai terminator dari sebuah string.
Contoh Program //Program aplikasi array sebagai tipe data bentukan #include <iostream> using namespace std; main() { // Mendeklarasikan array A dari tipe karakter char A[5] = { 'B','U','D','I','\0' }; // Mendeklarasikan B sebagai string char B[5] = "BUDI"; // Menampilkan nilai dari elemen array A for (int C=0; C<5; C++) { cout<<A[C]; } cout<<endl; // Menampilkan nilai dari variabel B cout<<B; cout<<"\n\n"; // Menampilkan ukuran dari A dan B cout<<"Ukuran A : "<<sizeof(A)<<endl; cout<<"Ukuran B : "<<sizeof(B); return 0; }
Array dari Struktur dan Struktur dari Array • Array dari struktur berarti mendeklarasikan sebuah array di mana nilai dari setiap elemennya bertipe struktur • Struktur dari array berarti mendeklarasikan sebuah struktur di mana anggota dari struktur tersebut bertipe array.
Contoh Program Array dari Struktur //Program aplikasi array dari struktur #include <iostream> using namespace std; main() { int C; // Mendeklarasikan variabel C sebagai indeks pengulangan // Mendefinisikan tipe data bertipe struktur typedef struct SISWA { long NIM; char Nama[25]; char Kota[30]; }; // Mendeklarasikan array A dengan tipe SISWA dan jumlah elemennya tiga SISWA A[3]; // Mengisikan nilai pada elemen array for (C=0; C<3; C++) { cout<<"NIM : "; cin>>A[C].NIM; cout<<"Nama : "; cin>>A[C].Nama; cout<<"Kota : "; cin>>A[C].Kota; cout<<'\n'; } // Menampilkan nilai yang telah dimasukkan ke dalam elemen array for (C=0; C<3; C++) { cout<<A[C].NIM<<endl; cout<<A[C].Nama<<endl; cout<<A[C].Kota<<endl; cout<<'\n'; } return 0; }
Contoh Program Struktur dari Array #include <iostream> using namespace std; main() { // Mendeklarasikan struktur yang data anggotanya bertipe array struct STRUKTUR { int A[3]; int B[3]; }; // Mendeklarasikan variabel X yang bertipe STRUKTUR STRUKTUR X; int C; // Memasukkan nilai ke dalam variabel X for (C=0; C<3; C++) { X.A[C] = C+1; X.B[C] = (C+1) * 100; } // Menampilkan nilai yang telah dimasukkan ke dalam variabel X for (C=0; C<3; C++) { cout<<"X.A["<<C<<"] = "<<X.A[C]<<endl; cout<<"X.B["<<C<<"] = "<<X.B[C]<<endl; cout<<'\n'; } return 0; }
Array dari Pointer dan Pointer dari Array • Elemen array dapat berbentuk pointer dan pointer dapat menunjuk ke tipe array • Membuat array dari pointer berarti mendeklarasikan pointer sebanyak jumlah elemen array yang ditentukan Contoh Array dari Pointer int *P[5]; //5 buah alamat memori yang ditunjuk oleh pointer P Contoh Pointer ke Array int A[5]; // Array dgn 5 buah elemen bertipe int. int *P=A; //Mendeklarasikan pointer P untuk menunjuk array A
Contoh Program Array dari Pointer //Program apllikasi array dari pointer #include <iostream> using namespace std; main() { // Mendeklarasikan array dari pointer int *P[5]; for (int C=0; C<5; C++) { P[C] = new int; cout<<P[C]<<endl; delete P; } return 0; }
Contoh Program Pointer ke Array //Program aplikasi pointer ke array #include <iostream> using namespace std; main() { int A[5]; int *P = A; cout<<"Nilai &A[0] = "<<&A[0]<<endl; cout<<"Nilai P = "<<P; return 0; }
Array Dua Dimensi • Array yang mempunyai dua buah subskrip, yaitu baris dan kolom Deklarasi: tipe_data nama_array[jum.elemen_baris][jum.elemen_kolom];
Contoh Program //Program aplikasi array dua dimensi #include <iostream> using namespace std; main() { typedef int MATRIK [3][2]; // Mendeklarasikan array A sebagai array dua dimensi MATRIK A, B, C; int j, k; // Mengisikan nilai ke dalam elemen-elemen array A for (j=0; j<3; j++) { for (k=0; k<2; k++) { cout<<"A["<<j<<"]["<<k<<"] = "; cin>>A[j][k]; } } cout<<endl; // Mengisikan nilai ke dalam elemen-elemen array B for (j=0; j<3; j++) { for (k=0; k<2; k++) { cout<<"B["<<j<<"]["<<k<<"] = "; cin>>B[j][k]; } } cout<<endl; /* Melakukan penjumlahan A dan B dan menyimpan hasilnya ke dalam array C*/ for (j=0; j<3; j++) { for (k=0; k<2; k++) { C[j][k] = A[j][k] + B[j][k]; } } // Menampilkan hasil penjumlahan for (j=0; j<3; j++) { for (k=0; k<2; k++) { cout<<"C["<<j<<"]["<<k<<"] = "<<C[j][k]<<endl; } } return 0; }
Array Tiga Dimensi • Array yang mempunyai tiga buah subskrip, yaitu baris dan kolom Deklarasi: tipe_data nama_array[jum.elemen_baris][jum.elemen_kolom]; • Inisialisasi pada Array Contoh: int A[3][3]={ {1,2,3},{4,5,6},{7,8,9} }
Contoh Program //Program aplilkasi array tiga dimensi #include <iostream> using namespace std; main() { /* Melakukan inisialisasi nilai ke dalam elemen-elemen array dua dimensi*/ int A[3][3] = { {1,2,3}, {4,5,6}, {7,8,9} }; // Mendeklarasikan variabel untuk indeks pengulangan int j, k; // Menampilkan nilai yang tersimpan dalam elemen array for (j=0; j<3; j++) { for (k=0; k<3; k++) { cout<<"A["<<j<<"]["<<k<<"] = "<<A[j][k]<<endl; } cout<<endl; } return 0; }
Terima Kasih