Sabtu, 31 Mei 2014

Mengenal dan Menggunakan Array di Pascal

Array adalah suatu bentuk struktur data yang terdiri dari beberapa variabel dengan tipe data yang sama dimana masing-masing nilai element memiliki nilai indeks. Array dikenal juga dalam sebutan larik. Array dapat diakses dengan menggunakan nilai indeksnya yang biasanya dimulai dari 0 (nol). Pengaksesan array biasanya menggunakan teknik perulangan. silahkan baca tentang perulangan di pascal disini.

Dalam Pascal sebuah variabel dengan tipe data array dapat kita definisikan sendiri index awal dan index akhirnya. Berikut adalah contoh pendeklarasian array dalam pascal.
var

{* Deklarasi array 1 Dimensi *}
data1 : array[1..10] of integer;
{* Deklarasi Array 2 Dimensi *}
data2 : array[1..10,1..10] of integer;
{* Deklarasi array Multidimensi *}
data3 : array[1..10,1..10,1..10] of integer;

Untuk mengakses atau memberikan nilai pada variabel yang bertipe data array kita harus mendefinisikan index yang akan kita akses. Suatu misal seperti berikut ini.
{* Memberikan Nilai Array 1 Dimensi *}
data1[1]:=10;
{* Memberikan Nilai Array 2 Dimensi *}
data2[1,1]:=20;
{* Memberikan Nilai Array Multdimensi *}
data3[1,1,1]:=30;

{* Mengakses Array 1 Dimensi *}
writeln(data1[1]);
{* Mengakses Array 2 Dimensi *}
writeln(data2[1,1]);
{* Mengakses Array Multidimensi *}
writeln(data3[1,1,1]);

Sayangnya, Jika kita menggunakan cara diatas untuk mengakses suatu array maka hal ini akan memakan banyak waktu maka seperti yang telah saya jelaskan sebelumnya biasanya array akan diakses dengan menggunakan perulangan. berikut adalah contoh sederhananya.
program belajar;

var
{* Deklarasi array 1 Dimensi *}
data1 : array[1..10] of integer;
{* Deklarasi Array 2 Dimensi *}
data2 : array[1..10,1..10] of integer;
{* Deklarasi array Multidimensi *}
data3 : array[1..10,1..10,1..10] of integer;
i,j,k : integer;

begin
j := 1;
k := 1;
{* Memberikan Nilai Array *}
for i:=1 to 10 do
begin
{* Memberikan Nilai Array 1 Dimensi *}
data1[j]:=10;
{* Memberikan Nilai Array 2 Dimensi *}
data2[j,j]:=20;
{* Memberikan Nilai Array Multdimensi *}
data3[j,j,j]:=30;
j:=j+1;
end;

{* Mengakses Array *}
while (k<=10) do
begin
{* Mengakses Array 1 Dimensi *}
writeln('--- Array 1 Dimensi ---');
writeln('Index Ke : ',k);
writeln(data1[k]);
{* Mengakses Array 2 Dimensi *}
writeln('--- Array 2 Dimensi ---');
writeln('Index Ke : ',k);
writeln(data2[k,k]);
{* Mengakses Array Multidimensi *}
writeln('--- Array Multidimensi ---');
writeln('Index Ke : ',k);
writeln(data3[k,k,k]);
k:=k+1;
end;
end.

Tidak ada komentar:

Posting Komentar