STRUKTUR DATA Array Pengantar Array Larik Array atau


![Contoh: int nilai[6]; Elemen Array Elemen 1 Elemen 2 Elemen 3 Elemen 4 Elemen Contoh: int nilai[6]; Elemen Array Elemen 1 Elemen 2 Elemen 3 Elemen 4 Elemen](https://slidetodoc.com/presentation_image_h2/1b8a59cf879fd378ff96f4d93d926362/image-3.jpg)






![Array 1 Dimensi dalam C++ #include<conio. h> #include<iostream. h> void main() { float nilai[5] Array 1 Dimensi dalam C++ #include<conio. h> #include<iostream. h> void main() { float nilai[5]](https://slidetodoc.com/presentation_image_h2/1b8a59cf879fd378ff96f4d93d926362/image-10.jpg)

- Slides: 11

STRUKTUR DATA Array

Pengantar Array / Larik • Array atau larik adalah sekumpulan elemen yang bertipe sama. • Array merupakan suatu himpunan elemen, terurut dan homogen. • Terurut, kita artikan bahwa elemen tersebut dapat diidentifikasi sebagai elemen pertama, elemen kedua, dan seterusnya sampai elemen ke-n. • Homogen adalah bahwa setiap elemen dari sebuah array mempunyai tipe data yang sama. • Deklarasi array pada bahasa C++ tipe_data nama_array[elemen]; • Suatu array dapat digambarkan sebagai kotak panjang yang berisi kotak-kotak kecil didalam kotak panjang tersebut
![Contoh int nilai6 Elemen Array Elemen 1 Elemen 2 Elemen 3 Elemen 4 Elemen Contoh: int nilai[6]; Elemen Array Elemen 1 Elemen 2 Elemen 3 Elemen 4 Elemen](https://slidetodoc.com/presentation_image_h2/1b8a59cf879fd378ff96f4d93d926362/image-3.jpg)
Contoh: int nilai[6]; Elemen Array Elemen 1 Elemen 2 Elemen 3 Elemen 4 Elemen 5 Elemen 6 0 1 2 3 4 5 Subscript / Index Array Nilai

• Elemen bisa didefinisikan atau pun tidak, dan bisa langsung diberi nilai awal. Contoh : int nilai[]={16, 2, 77 40, 12071}; • Untuk mengakses data pada array, gunakan nomor index sebagai penunjuk lokasi memori, seperti format ini nama_array[index]; • Index array pada C++ dimulai dari 0

• Nilai/data yang ada pada array harus sama jumlahnya dengan elemen array yang sudah didefinisikan. • Jika elemen dikosongkan, artinya anda tidak membatasi jumlah nilai yang ada pada array tersebut. • Array terbagi 2, yaitu array satu dimensi dan multidimensi. • Array dapat juga dijadikan argumen/ parameter sebuah fungsi.

Array 1 Dimensi Elemen 1 Elemen 2 Elemen 3 Elemen 4 Elemen 5 Elemen 6 • Subscript/index dari elemen array menentukan posisi elemen pada urutan array. • Secara umum, array berdimensi satu A dengan tipe T dan subscript bergerak dari X ke Y, ditulis sebagai A(X: Y)= (A(I)), I = X, X+1, X+2, … , Y dan setiap elemen A(I) bertipe data T. • Banyaknya elemen sebuah array disebut rentang atau range, maka array A(X: Y) mempunyai range sebesar Y-X+1

Pemetaan Array Dimensi Satu ke Storage • Ada beberapa cara untuk menyajikan array dalam memory. • Skema penyajian dapat dievaluasi berdasar 4 karakteristik : • • Kesederhanaan dari akes elemen Mudah untuk ditelusuri Efisiensi dari utilitasi storage Mudah dikembangkan • Misal terdapat array NIM dengan batas bawah subscript 1 dan batas subscript N. • Storage untuk elemen NIM (I+1) adalah berdampingan dengan storage untuk elemen NIM(I).

Pemetaan Array Dimensi Satu ke Storage • Untuk menghitung alamat (address) awal dari elemen NIM(I) diperlukan hal sebagai berikut : • Address awal dari ruang storage yang dialokasikan bagi array tersebut • Ukuran dari masing-masing elemen array. • Misal address awal dari array, kita nyatakan dengan B, disebut juga dengan base-location. • Misal masing-masing elemen array menduduki S byte. • Maka address awal dari NIM(I) adalah : NIM(I) = B + (I-L) * S

Pemetaan Array Dimensi Satu ke Storage • Contoh Array slogan (0: 6) Array slogan (dimensi 1) misalkan dipetakan ke memori mulai alamat 5002 (Base address). Kebutuhan memori tiap elemen (S) = 1 byte. Alamat awal elemen slogan[i] di memori dihitung sbb : B + (I-L) * S Contoh: Elemen slogan[5] alamat awalnya di memori adalah: 5002 + (5 – 0) * 1 = 5002 + 5 * 1 = 5007
![Array 1 Dimensi dalam C includeconio h includeiostream h void main float nilai5 Array 1 Dimensi dalam C++ #include<conio. h> #include<iostream. h> void main() { float nilai[5]](https://slidetodoc.com/presentation_image_h2/1b8a59cf879fd378ff96f4d93d926362/image-10.jpg)
Array 1 Dimensi dalam C++ #include<conio. h> #include<iostream. h> void main() { float nilai[5] = {56. 4, 67. 6, 57. 7, 76. 3, 72. 5}; int i; for(i=0; i<5; i++) { cout<<"Nilai Array Index ke - "<<i<<" = "; cout<<nilai[i]<<endl; } getch(); }

Latihan • Sebuah array bola berdimensi satu bertipe char bergerak dari subscript 0 sampai 9 dengan base addres 35424 – Hitung berapa range nya. – Gambarkan pemetaan dalam storage bila diisi data [intermilan]. – Elemen ke berapakah data “m” dan berapa alamat memorinya. • Sebuah array nim berdimensi satu bertipe int bergerak dari subscript 5 sampai 8 dengan base address 523 – Hitung berapa range nya. – Gambarkan pemetaan dalam storage bila diisi data [234, 567, 234, 984]. – Berapa alamat awal dari 984? • Diketahui sebuah elemen “k” dari array [kurangasin] mempunyai alamat memory 8900. Jika “k” adalah subscript ke 4 dan tipe datanya char, berapakah subscript terakhir dan gambarkan pemetaan dalam storage.