70 likes | 214 Views
ARRAY. Suatu array ( larik ) adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama . Komponen ini disebut dengan tipe komponen (component type) atau tipe basis (basis type).
E N D
ARRAY Suatuarray (larik) adalahtipeterstruktur yang terdiridarisejumlahkomponen-komponen yang mempunyaitipe yang sama. Komponeninidisebutdengantipekomponen (component type) atautipe basis (basis type). Suatu array mempunyaimempunyaijumlahkomponen yang banyaknyatetap. Banyaknyakomponendalamsuaularikditunjukkanolehsuatuindekx (index type) berbentukungkapantipe ordinal. Tiap-tiaptipekomponen di array dapatdiaksesdenganmenunjukkannilaiindeksnya (index value) ataudisebutjugadengansubscript.
ARRAY BERDIMENSI SATU Jenis Array yang paling sederhanaadalah array berdimensisatu. Biasanya array berdimensisatudinyatakansebagaikotakpanjang yang dibagimenjadibeberapabagian yang sama. Bentukpenulisandari array adalah : Tipelarik : array [ tipeindeks ] of tipe Contoh : Var Tipedari array X : array[1..100] of integer NilaiX telahdideklarasikansebagai array tipe integer denganjumlahmaksimumsebanyak 100 elemen. Nilaielemen array iniharusberisinilai integer. Contoh : Nilai integer X[1] := 10; X[2] := 20; X[3] := 30; Bilanilaielemen ke-3 dari array X akanditampilkan, makadapatdigunakanstatemen : WRITELN(X[3]);
Indeks Berupa Bilangan Bulat Program berikut menggambarkan cara memasukkan data nilai ke dalam array, menghitung dan menampilkan nilai rata-ratanya. Contoh : PROGRAM larik; USES CRT; VAR I, JUMLAH : INTEGER; RATA : REAL; X : ARRAY[1..100] OF INTEGER; BEGIN CLRSCR; FOR I:=1 TO 10 DO BEGIN WRITE('Nilaibilanganke-', I, ' = '); READLN(X[I]); JUMLAH:= JUMLAH + X[I]; END; RATA:=JUMLAH/10; WRITELN; WRITELN ('Rata-rata bilangan = ', RATA:9:2); READLN; END.
Indeks Berupa Karakter Untuk mendeklarasikan array dengan tipe string maka tipe string harus dideklarasikan terlebih dahulu di bagian deklarasi terlebih dahulu pada bagian tipe. Misal : TYPE Huruf = string[30]; VAR Nama : array[1..100] of Huruf; Bentuk yang salah : Nama : array[1..100] of string[30]; Bilanilaielemen array dibatasinilainyadalamsuatujangkauannilai yang tertentu, makadapatdideklarasikandengantipe array subrange. Misal : TYPE RangeUsia = 17..100; VAR Usia : array[1..100] of RangeUsia; Bentuk yang salah : Usia : array[1..100] of 17..100; Sebuah array bisadiberinilaiawal. Pemberian nilai awal dapat dilakukan dalam deklarasi CONST.
Contoh: PROGRAM larik; USES CRT; TYPE TIPEHARI = (Minggu, Senin, Selasa, Rabu, Kamis, Jumat, Sabtu); CONST KET : ARRAY [TIPEHARI] OF STRING[6] = ('Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu'); VAR MAKS : REAL; HARI : TIPEHARI; SUHU : ARRAY[TIPEHARI] OF REAL; BEGIN CLRSCR; FOR HARI:= Minggu TO Sabtu DO BEGIN WRITE ('Masukkan data suhu hari ', KET[HARI]:6,' ='); READLN(SUHU[HARI]); END; MAKS := SUHU[Minggu]; FOR HARI:= Senin TO Sabtu DO IF SUHU[HARI] > MAKS THEN MAKS := SUHU[HARI]; WRITELN('SuhuTertinggiAdalah ', MAKS:4:1); READLN; END
ARRAY MULTIDIMENSI Array multidimensimerupakan array yang bertipe array. Pada bahasa PASCAL, jumlahdimensiarraytidakdibatasi. Namun yang palingumumdipakaiadalaharrayberdimensidua. Bentukdeklarasi : Tipelarik : array [ tipe indeks1 ] of array [ tipe indeks2 ] of tipe-larik Ataudapatditulis : Tipelarik : array [ tipe indeks1, tipe indeks2 ] of tipe-larik
Contoh: PROGRAM larik; USES CRT; VAR TABEL : ARRAY [1..3, 1..2] OF BYTE; I, J : BYTE; BEGIN CLRSCR; FOR I:=1 TO 3 DO BEGIN FOR J:=1 TO 2 DO BEGIN WRITE('Masukkan Matriks Baris ke-',I,' Kolom ke-',J,' = '); READLN(TABEL[I,J]); END; END; WRITELN;WRITELN('HasilMatriks : '); FOR I:=1 TO 3 DO BEGIN FOR J:=1 TO 2 DO WRITE(TABEL[I,J]:7); WRITELN; END; READLN; END.