Modul 7 Array
Modul 7 Array
Materi 7: Array
7.1. Array Array adalah kumpulan data-data beripe sama dan menggunakan nama yang sama. Dengan menggunakan rray, sejumlah variabel dapat memakai nama yang sama. Antara satu variabel dengan variabel yang lain di dalam array dibedakan berdasarkan subscript. Sebuah subscript berupa bilangan didalam tanda kurung siku. Melalui subscript inilah masing-masing elemen array dapat diakses. Nilai subscribe pertama secara default adalah 0. C++ tidak mengecek array. Bila dinyatakan int x[10], ini artinya 10 elemen yang dimulai dari 0. Karena itu elemen terakhir array adalah x[9]. Bila salah mereferensikannya dengan x[10], anda akan mendapatkan harga yang tidak terpakai. Akan lebih buruk lagi jika memberikan harga ke x[10], yang tidak dapat diterima. Karakteristik array: Hubungan antar elemen adalah LINEAR Umumnya letak elemen Array di memory secara physical & logical adalah sama Terdiri dari INDEX dan KOMPONEN, hubungan INDEX dan KOMPONEN adalah one-to-one Semua komponen mempunyai tipe sama (HOMOGENOUS) Cara access: RANDOM
7.2. Struktur dan Representasi Array Definisi dari sebuah array terdiri dari 4 komponen yaitu : 1.Type specifier 2.Identifier (nama array) 3.Operator index ([ ]) 4.Nilai dimensi dalam operator [ ] Sintaks deklarasi array dimensi satu : type nama_array[ukuranArray]; Contoh : int A[10]; Misalkan terdapat sekumpulan data ujian seorang siswa, ujian pertama bernilai 90, kemudian 95,78,85. Susunan dalam array kita sebagai berikut
Perhatikan : Tanda kurung [ ] digunakan untuk menunjukkan elemen array Perhitungan elemen array dimulai dari 0, bukan 1
Empat pernyataan diatas memberikan nilai kepada array ujian. Tetapi sebelum kita memberikan nilai kepada array, kita harus mendeklarasikannya terlebih dahulu, yaitu :
int ujian[4];
Perhatikan bahwa nilai 4 yang berada didalam tanda kurung menujukkan jumlah elemen array, bukan menunjukkan elemen array yang ke-4. Jadi elemen array ujian dimulai dari angka 0 sampai 3. Pemrogram juga dapat menginisialisasi array sekaligus mendeklarasikannya, sebagai contoh :
int ujian[4] = {90,95,78,85};
Elemen terakhir dari array diisi dengan karakter \0. Karakter ini memberitahu kompiler bahwa akhir dari elemen array telah dicapai. Walaupun pemrogram tidak dapat melihat karakter ini secara eksplisit, namun kompiler mengetahui dan membutuhkannya. Suatu array dapat digambarkan sebagai berikut: indeks nilai
0 90
1 95
2 78
3 85
7.3. Operasi pada Array Dua operasi dasar terhadap Array adalah: retrieve dan update. Retrieve(S,k,i); Mengambil nilai yang ke-i dari Array S dan diassign ke variable k Dalam bahasa C: k = S[i]; Contoh k = ujian[3]; nilai k sama dengan ujian[4] yaitu 85 Update(S,k,i); Mengubah nilai yang ke-i dari Array S dengan nilai dari variable k Dalam bahasa C: S[i] = k; Contoh ujian[3] = 80; nilai ujian[3] adalah 80
7.4. Array dan Fungsi Jika array digunakan sebagai parameter dalam suatu fungsi, maka passing parameter harus by location (pointer). Contoh:
#include <stdio.h> #include <iostream.h> void cetak_array(int index, int *Array) { printf(Array[%d]=%d\n, index, Array[index]); } int main() { int Array[] = {1, 6, 2, 8, 12}; cetak_array (2, Array); cin.get(); } #include <iostream.h> void ubah(int x[]); int main() { int ujian[] = {90,95,78,85}; ubah(ujian); cout<<" Elemen kedua dari array ujian adalah <<ujian[1]<<endl; cin.get(); } void ubah(int x[]) { x[1] = 100; }
7.5. Menghitung Panjang Array Karena fungsi sizeof() mengembalikan jumlah byte yang sesuai dengan argumennya, maka operator tersebut dapat digunakan untuk menemukan jumlah elemen array, misalnya
int array[] = {26,7,82,166}; cout<<sizeof(array)/sizeof(int);
akan mengembalikan nilai 4, yaitu sama dengan jumlah elemen yang dimiliki array array.
7.6. Exercise 1. Buatlah program untuk menyalin isi array A ke array B yang kosong dengan jumlah elemen sama. Ilustrasinya: Array: int A[5]; Indeks 0 1 2 3 4 Nilai 5 10 6 0 4 Array: int B[5]; Indeks 0 1 2 3 4 Nilai _ _ _ _ _ Kemudian array B akan berisi sama dengan isi array A: Array: int B[5]; Indeks 0 1 2 3 4 Nilai 5 10 6 0 4 2. Buatlah program dengan fungsi sbb: fungsi untuk meng-input 10 bilangan ke dalam array fungsi untuk mencari bilangan terbesar dalam array tersebut fungsi untuk mencari bilangan terkecil dalam arraytersebut fungsi untuk menghitung rata-rata fungsi untuk menampilkan : - 10 bilangan tersebut - Bilangan terbesar dan terkecil - Total jumlah bilangan - Rata-rata
3.
Diketahui array dari 6 buah bilangan berisi nilai: 10, 45, 21, 8 ,48, dan 20. Buatlah program untuk meminta user menginputkan bilangan, kemudian mencri bilangan tersebut di dalam array, apakah ada atau tidak. Jika ada program akan memberitahukan user bahwa bilangan tersebut ada dalam array dan menyebutkan juga indeks dari bilangan tersebut. Contoh: user menginputkan 21. Maka program akan menampilkan BILANGAN 21 berada di indeks ke-2.
4.
Buatlah program untuk menghitung jumlah huruf vokal (a, i, u, e, o) yang terdapat pada suatu kalimat yang diinputkan user.
5.
Buatlah program yang meminta user untuk menginputkan 10 bilangan, kemudian program akan mengurutkan 10 bilangan tersebut.