Anda di halaman 1dari 7

A R R A Y

Menyimpan data di memory menggunakan variabel bertipe data mempunyai keterbatasan karena satu variabel hanya
bisa menyimpan satu data, sehingga bila data yang ingin disimpan lebih dari satu data maka variabel yang digunakan
juga akan lebih dari satu. Untuk mengatasi kendala tersebut salah satunya bisa menggunakan array. Array dapat
menampung lebih dari satu data yang bertipe data sama dalam satu variabel. Elemen-elemen array tersusun secara
sekuensial dalam memori komputer.

ARRAY adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Dalam
array data tersimpan berdasarkan indeks untuk memudahkan pencariannya. Komponen-komponen dalam array disebut
sebagai komponen type, Larik / Array mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam
larik ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan menunjukkan nilai indexnya
atau subscript. Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data
scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data
tersebut. Array dapat berupa satu dimensi, dua dimensi, tiga dimensi ataupun banyak dimensi (multi dimensi).

Contoh:
Var
Untai : Array [1..50] of Integer;
Pada contoh Array dengan nama untai telah dideklarasikan dengan tipe integer, dengan jumlah elemen maksimum 50
elemen, nilai dari elemen array tersebut diatas harus bertipe integer.
ARRAY SATU DIMENSI

Array Satu dimensi tidak lain adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris. Elemen-elemen
tersebut memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh berbeda.
Elemen Ke 1 2 3 4 5
Nilai 15 20 14 4 7
Gambar Konsep array satu dimensi

Bentuk Umum :
Type
NamaArray=Array[IndexArray] of TipeData;
Contoh
Type
Bilangan = array[1 . . 5] of ShortInt;
Gaji = Array[1..10] of LongInt








Contoh Pemakaian array satu dimensi dalam PASCAL.

Uses WinCrt;
Type Nilai = Array[1..5] of integer;
Var
DataNilai : Nilai;
I : Integer;
Begin
For i := 1 To 5 Do
Begin
Write (Masukan Nilai Ke- ,i, = );
Readln (DataNilai[i]);
End;
End.

Hasil Eksekusinya :









CONTOH PROGRAM_2 :
Program Contoh_Array_Input;
Uses Crt;
Var
Bilangan : array[1..50] of Integer;
Begin
ClrScr;
Bilangan[1]:=3;
Bilangan[2]:=29;
Bilangan[3]:=30;
Bilangan[4]:=31;
Bilangan[5]:=23;
Writeln(Nilai varibel bilangan ke 3 = ',Bilangan[3]);
Readln;
End.
Hasil Eksekusi Program :




Nilai varibel bilangan ke 3 = 30
Masukkan nllal ke- 1 = ......<lopot>........
Masukkan nllal ke-2 = ......<lopot>........
Masukkan nllal ke- 3 = ......<lopot>........
Masukkan nllal ke- 4 = ......<lopot>........
Masukkan nllal ke- 3 = ......<lopot>........
Array juga dapat dideklarasikan bersama dengan tipe yang beragam seperti contoh dibawah ini :
Program Contoh_Deklarasi_Array_Beragam;
Uses Crt;
Var
NPM : array[1..20] of string[10];
Nama : array[1..20] of string[25];
Nilai : array[1..20] of real;
Umur : array[1..20] of byte;
banyak,i : integer;
Begin
ClrScr;
Write('Isi berapa data array yang diperlukan :');Readln(banyak);
For i := 1 To banyak Do
Begin
Write('NPM =');Readln(NPM[i]);
Write('Nama =');readln(Nama[i]);
Write('Nilai=');readln(Nilai[i]);
Write('Umur =');readln(Umur[i]);
End;
{cetak varibel array}
Writeln('NPM NAMA NILAI UMUR ');
For i:= 1 To banyak Do
Begin
Writeln(Npm[i]:10, Nama[i]:25, Nilai[i]:3:2,' ', Umur[i]:3);
End;
Readln;
End.
Hasil Eksekusi Program :














nM = ...<lnpuL>....
nama = ...<lnpuL>....
nllal = ...<lnpuL>....
umur = ...<lnpuL>....

nM nama nllal umur
00000 xxxxxxxx 00,00 18
Untuk deklarasi array dapat digunakan beberapa cara seperti berikut ini :
Type
Angka = String[20];
Var
Nama : Array [1..50] of Angka;
Begin

.
End.

Deklarasi tipe indeks subrange integer Indeks pada array dapat tipe skalar atau subrange, tetapi tidak bisa real.
Contoh:
Var
Nilai : Array[1..10] of Integer;

pada contoh ini array nilai mempunyai 10 buah elemen yaitu dari 1 sampai 10. Array tersebut dapat dideklarasikan
dengan type seperti berikut ini :

Type
Skala = 1..10;
Var
Nilai : Array [skala] of Integer;

atau :

Type
Skala = 1..10;
Y = Array[skala] of Integer;
Var
Nilai : Y;
atau :

Type
Y = Array[1..10] of Integer;
Var
Nilai : Y;

atau :

Const
Atas =1;
Bawah = 5;
type
Y = Array[Atas..Bawah] of Integer;
Var
Nilai : Y;













I. DEKLARASI TYPE INDEKS SKALAR
Indeks dari larik dapat berupa tipe skalar.
Contoh. :
Program Deklarasi_Indeks_Array_Skalar;
Uses Crt;
Var
Jum : Array[(jan,feb,mar,apr,mei)] of Integer;
Begin
Jum[jan]:=25;
Jum[feb]:=45;
Jum[mar]:=21;
Jum[apr]:=23;
Jum[mei]:=50;
Writeln('Jumlah nilai bulan maret =',Jum[mar]);
Readln;
End.

dapat juga ditulis :
type
Bln = (jan,feb,mar,apr,mei);
Var
Jum : Array[bln] of Integer;

atau :

type
Bln =(jan,feb,mar,apr,mei);
Var
Jum : Array[jan..mei] of Integer;

II. DEKLARASI KONSTANTA ARRAY
Array tidak hanya dapat berupa suatu varibel yang dideklarasikan di bagian deklarasi variabel, tetapi dapat juga berupa
konstanta (const).
Contoh Program :
Program Contoh_Deklarasi_Array_Konstan;
Uses Crt;
Const
Tetap : Array[1..4] of Integer=(7,10,21,20);
Var
i : Integer;
Begin
For i:= 1 to 4 Do
Writeln('Nilai Konstan array ke ',i:2,' =',Tetap[i]);
Readln;
End.
konstanta array dapat juga berupa ketetapan dalam bentuk karakter seperti berikut.
Contoh Program :
Program Contoh_Konstan_Array_Char_;
Uses Crt;
Const
Huruf : Array[0..5] of Char=('A','B','C','D','E','F');
Var
i : Integer;
Begin
For i:= 0 to 5 Do
Writeln('Nilai konstan array ke',i:2,' = ',Huruf[i]);
Readln;
End.

Konstanta array dapat juga berupa string seperti berikut ini.
Contoh Program :
Program Constanta_Array_String;
Uses Crt;
Type
A = Array [1..5] of String;
Const
Nama : A = ('basic','pascal','cobol','paradox','dbase');
Var
i : Integer;
Begin
For i:= 1 to 5 Do
Writeln('Nilai Array ke-',i:2,'= ',Nama[i]);
readln;
end.

Dalam pascal string merupakan array dari elemen- elemen karakter seperti berikut :
Contoh Program :
Program String_Adalah_Array_Tipe_Char;
Uses Crt;
Var
Nama : string;
i : Integer;
Begin
Nama:='Turbo Pascal';
For i:= 1 to Length(nama) Do
Writeln('Elemen ',i,' dari ',Nama,'= ',Nama[i]);
Readln;
End.


Array Dua Dimensi

Array dua dimensi sering digambarkan sebagai sebuah matriks, merupakan perluasan dari array satu dimensi.
Jika array satu dimensi hanya terdiri dari sebuah baris dan beberapa kolom elemen, maka array dua dimensi terdiri dari
beberapa baris dan beberapa kolom elemen yang bertipe sama sehingga dapat digambarkan sebagai berikut:

[1] [2] [3]
[1] 1 3 4
[2] 3 2 2


Pendeklarasian array dua dimensi hampir sama dengan pendeklarasian array satu dimensi, kecuali bahwa array dua
dimensi terdapat dua jumlah elemen yang terdapat di dalam kurung siku dan keduanya boleh tidak sama. Elemen array
dua dimensi diakses dengan menuliskan kedua indeks elemennya dalam kurung siku :
Bentuk Umum :
Type
NamaArray=Array[IndexArray1,IndexArray2] of TipeData
Contoh
Type
Matriks=Array[1..2,1..3] of Byte;
Logika=array[1..5,boolean] of integer;


Contoh pemakaian dalam PASCAL,

Uses WinCrt;
Type Matriks=array[1..2,1..3] of Byte;
Var I,J : Integer;
DataMatrik : Matriks;

Begin
For I:=1 To 2 do
Begin
For J:=1 To 3 do
Begin
Write(Matriks ke ,I,J, =);Readln(DataMatrik[I,J]);
End;
Writeln;
End;
End.