Anda di halaman 1dari 21

BAB II

Array Statis

Array Array adalah sekumpulan memori untuk suatu nama yang memiliki elemen-elemen data yang sejenis. Sifat-sifat array adalah sebagai berikut : Mengacu sekumpulan elemen melalui indeks. Elemen bertipe sama. Disimpan secara berurutan di memori. Ukuran tetap, harus dipesan terlebih dahulu.

Keuntungan data array / larik : Paling mudah pengoperasiannya Ekonomis dalam pemakaian memori, bila semua elemen terisi Akses ke setiap elemen memerlukan waktu yang sama

Kerugian data array / larik : Memboroskan tempat jika banyak elemen yang tidak digunakan

Representasi array dibagi menjadi dua, yaitu : 1. Representasi array 1 dimensi, contoh : string. array A
0 1 2 3 4 5 6 7

Elemen Larik : A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7] Indeks Larik : 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 Mengisi elemen larik : A[3] 100

DEKLARASI ARRAY / LARIK


Type < Nama Array>=Array [ indexArray ]of TipeData; Atau Const Min = ; Maks =; Var Nama_array: array[ Min..Maks ]of typedata; Sebelum elemen array / larik dapat digunakan, perlu didefinisikan dahulu pada kamus data sebagai berikut : Kamus : Nama : array[1 ..400] of string { array dengan tipe data string } Panjang : array[ae] of real { array dengan tipe data real}

Hal yang perlu diingat : Elemen array harus memiliki tipe data yang sama atau sejenis (homogen) seperti integer, real, char, string, Boolean, record. Artinya array tersebut didefinisikan sebagai integer maka nilai yang boleh masuk ke dalam elemen array harus bertipe integer. indeks array harus memiliki tipe data yang menyatakan keterurutan, seperti integer atau karakter.

Operasi Traversal terhadap tabel array : Tabel integer didefinisikan seperti dibawah ini : Const IdxMin = 1; {batas bawah} IdxMax = 10; {batas atas} Type TipeElm = Integer; {type terdefinisi,misal integer} TabInt = Array [IdxMin .. IdxMax] of TipeElm; Var TInt = TabInt; {tabel integer}

Skema traver sal : Pemrosesan traver sal yaitu mengolah seluruh elemen tabel secara sistematik . Skema : Procedure ProsesTraver sal (Var TI:TabInt ); Var i:integer; Begin Inisialisasi ; {prosedur per siapan sebelum pemrosesan } For i:=IdxMin to IdxMax do Begin Proses ( TI [ i ] ); {proses terhadap elemen saat itu} End; Terminasi ; {prosedur aksi setelah pemrosesan selesai} End;

Contoh penggunaan skema : - Prosedur memasukkan nilai seluruh elemen tabel. Procedure InputTabInt (Var TI : TabInt); Var i : Integer; Begin For i := IdxMin to IdxMax do Begin Write ( Elemen ke- ,i); Readln ( TI[ i ] ); End; End;

- Prosedur menuliskan seluruh nilai elemen tabel ke layar. Procedure OutputTabInt ( TI : TabInt); Var i: Integer; Begin For i := IdxMin to IdxMax do Begin Write ( Elemen ke- ,i, = ); Writeln ( TI [ i ] ); End; End;

Pendeklarasian array di C++ : Untuk array 1 dimensi : Type array Nama Array [index ] Contoh : Int Nilai[5] artinya Nilai[0] Nilai[1] Nilai[2] Nilai[3] Nilai[4 ]
70 80 82 60 75

CONTOH PROGRAM STRUKTUR DATA UNTUK ARRAY


Contoh Program_Proses_Array :
#include <stdio.h> #include <conio.h> void main() { int Nilai[10]; deklarasi array int index; float total,ratarata; // Pembacaan data dari keyboard printf ( Pembacaan data nilai \ n); for (index=0;index<10;index++) {

printf ( Nilai mahasiswa ke- %d = ,index+1); scanf (%d,& Nilai[index]); } clrscr(); // Perhitungan total dan rata-rata total=0; for (index=0;index<10;index++) total=total+Nilai[index];// atau total+=Nilai[index]; ratarata=total/10; printf ( Tampil Nilai Mahasiswa\ n); printf ( ----------------------\ n); // Menampilkan data yang telah dimasukan dan rata-rata. for (index=0;index<10;index++) printf ( Nilai mahasiswa ke-%d = %3d\ n,index+1 ,Nilai[index]); printf(Rata -rata = %6.2f\ n,ratarata); getch(); }

2. Representasi array 2 dimensi, contoh : matriks. Matriks adalah struktur data yang mengacu pada sebuah/ sekumpulan elemen yang diakses melalui indeks. Matriks berindek terdiri dari dua bagian yaitu indeks baris dan indeks kolom. Setiap elemen matriks dapat diakses melalui indeksnya

Contoh : Matriks A bernama A dengan ukuran 2 X 3 ( memiliki indeks baris 2 dan indeks kolom 3 ) A[1 ,1] A[1 ,2] A[1 ,N] A[1 ,1] A[2,1] A[2,N]

A[N,1]

A[N,N]

Proses proses / operasi terhadap Matriks : 1. Pengisian elemen matriks dari fil 2. Pengisian elemen matriks khusus dengan assignment 3. Penulisan elemen matriks 4. Penjumlahan matriks 5. Perkalian matriks

Algoritma-algoritma Operasi Matriks : 1 . Pengisian elemen matriks dari fil Read N1 , N2 {N1 : jumlah baris, N2 : jumlah kolom} I 1 While I <= N1 do J1 While J <= N2 do Read M (I,J) J J+1 EndWhile I I+1 EndWhile

2 . Pengisian elemen matriks khusus dengan assignment Matriks N1 x N2 yang semua elemennya 1 : I 1 While I <= N1 do J1 While J <= N2 do M (I,J) 1 J J+1 EndWhile I I+1 EndWhile

3. Penulisan elemen matriks I 1 While I <= N1 do J1 While J <= N2 do Write M (I,J) J J+1 EndWhile I I+1 EndWhile

4. Penjumlahan matriks I 1 While I <= N1 do J1 While J <= N2 do C (I,J) A (I,J) + B (I,J) J J+1 EndWhile I I+1 EndWhile

6, Perkalian m atriks I 1 While I <= N1 do J 1 While J <= N2 do C (I,J) 0 K 1 While K <= N do

{N1 = baris Matriks A} {N2 = baris Matriks B}

{N = kolom matriks A = baris matriks B} C (I,J) C (I,J) + A (I,K) * B (K,J) K K + 1 EndWhile J J+1 EndWhile I I + 1 EndWhile

Anda mungkin juga menyukai