ARRAY DAN RECORD dalam pascal

 

Pernahkah kamu membayangkan bila kita mau membuat program toko buah-buahan. Jika ada 3 jenis buah-buahan (melon, duku dan mangga) berarti kita harus mempunyai tiga variabel untuk masing-masing jenis buah. Tetapi betapa sulitnya jika toko itu punya 10 atau 20 jenis yang berbeda. Solusinya adalah gunakan array. Array itu adalah tipe data terstuktur yang berguna untuk menyimpan sejumlah data yang bertipe sama. Bagaimana cara kerjanya? yaitu dengan menggunakan index (semacam penanda). 


Perhatikan contoh:

  1: Program Tutorial5_Array;
  2: var buah: array [1..3] of string;
  3:     i: integer;
  4: Begin
  5:   For i:=1 to 3 do
  6:     begin
  7:       write('Masukkan buah-buahan ke ',i , ' : ');readln(buah[i]);
  8:     end;
  9:   writeln;writeln('Isi buah-buahan yang dimasukkan tadi adalah : ');
10:   For i:= 1 to 3 do
11:     writeln('buah ke', i ,' : ', buah[i]);
12: End.

Lihat pada baris ke 7. Dengan hanya menggunakan satu nama variabel yaitu buah, kita bisa menyimpan 3 nilai yang berbeda. Misalkan yang kita masukkan adalah melon, duku dan mangga. maka buah[1] bernilai melon, buah[2] bernilai duku dan buah[3] bernilai mangga. Untuk mencetak isi variabel yang sudah disimpan di array tadi caranya bisa dilihat di baris ke 11.

Bagaimana, gampangkan? setelah mengetahui cara menggunakan array, sekarang kita belajar menggunakan record. Tidak seperti array, record adalah jenis tipe data terstruktur yang berisi beberapa data, yang masing-masing dapat berlainan tipe. Perhatikan contoh:

  1: Program Tutorial5_Record;
  2: type buah = record
  3:      nama: string;
  4:      harga: longint;
  5: end;
  6: var data:buah;
  7: Begin
  8:   write('nama buah: ');readln(data.nama);
  9:   write('harga buah: ');readln(data.harga);
10:   write('ditampilkan');
11:   write('nama');readln(data.nama);
12:   writeln('harga');readln(data.harga);
13: End.

Apa yang bisa kamu ambil kesimpulan dari program di atas? Bingung? Jadi gini, dengan menggunakan record (di sini bernama buah) kita bisa membuat tipe data yang berisi beberapa data yang berlainan tipe (nama dengan jenis string, dan harga dengan jenis long integer) yang ini disebut field.

Perhatikan baris ke 6, di situ dideklarasikan bahwa variabel data bertipe buah. Otomatis yang dimiliki buah (nama dan harga) dimiliki juga oleh data. Setelah itu lihat baris ke 8 dan 9. Nama buah disimpan dalam field nama dan harga buah disimpan di dalam field harga. Untuk bisa menyimpan data di field, urutannya harus variabel.field (contohnya di sini data.nama atau data.harga). Begitu juga bila kita ingin menampilkan isi field tersebut.

Tipe data seperti ini sangat berguna kedepannya loohh... Apalagi jika digabungkan dengan array.