Array
Array
lain. Daripada membuat 10 variabel yang terdiri dari nama1, nama2, nama3,
dst, akan lebih efisien jika variabel nama ini disimpan ke dalam array. Sebagai
contoh, perhatikan kode program berikut ini:
program tipe_array;
uses crt;
var
nilai1, nilai2, nilai3, nilai4: integer;
begin
clrscr;
nilai1:= 23;
nilai2:= 13;
nilai3:= 98;
nilai4:= 106;
writeln('nilai1: ',nilai1);
writeln('nilai2: ',nilai2);
writeln('nilai3: ',nilai3);
writeln('nilai4: ',nilai4);
readln;
end.
Dalam contoh tersebut terdapat 4 variabel: nilai1, nilai2, nilai3 dan nilai4.
Keempat variabel ini bertipe integer. Tidak ada yang salah dari kode program
diatas. Tapi bayangkan apabila kita ingin menyimpan lebih dari 4 nilai,
bagaimana jika 10 atau 100 nilai? Tentu tidak efisien jika kita harus membuat
variabel nilai1, nilai2, nilai3… sampai dengan nilai100. Untuk hal inilah tipe
data array lebih cocok digunakan.
Untuk membuat tipe data array di pascal, kita harus menentukan seberapa
banyak element array yang ingin dibuat. Element adalah sebutan untuk
‘anggota’ / isi dari array. Sebagai contoh, untuk membuat 10 element array
bertipe integer saya bisa menggunakan kode berikut:
var
nilai: array[0..9] of integer;
Sekarang, variabel ‘nilai’ berisi array dengan 10 element bertipe integer. Perhatikan angka 0..9, ini
berarti saya membuat element array dari element 0, element 1, element 2, element 3,.. hingga
element 9 (total terdapat 10 element).
program tipe_array;
uses crt;
var
nilai: array[0..9] of integer;
begin
clrscr;
nilai[0]:= 23;
nilai[1]:= 13;
nilai[2]:= 98;
nilai[3]:= 106;
writeln('nilai0: ',nilai[0]);
writeln('nilai1: ',nilai[1]);
writeln('nilai2: ',nilai[2]);
writeln('nilai3: ',nilai[3]);
readln;
end.
uses crt;
var
nama :array[1..10]of string[20];
NPM:array[1..10]of string[20];
alamat:array[1..20]of string[30];
i,j :integer;
begin
clrscr;
write('Masukkan Jumlah Data Mahasiswa :'); readln(j);
for i:=1 to j do
begin
writeln('Data ke-',i);
write('Nama Mahasiswa :'); readln(nama[i]);
write('Masukkan NPM :'); readln(NPM[i]);
write('Alamat :'); readln(alamat[i]);
end;
clrscr;
writeln('********************************************************************
***********');
writeln('No. | Nama Mahasiswa | NPM | Alamat |');
writeln('********************************************************************
***********');
for i:= 1 to j do
begin
writeln(i:1, nama[i]:20, NPM[i]:25, alamat[i]:25);
end;
writeln('********************************************************************
***********');
readln;
end.
Setelah membahas tentang tipe data array pascal dalam tutorial sebelum ini,
kita akan beralih ke tipe data bentukan lainnya, yakni record. Kali ini saya akan
membahas tentang pengertian dan cara penggunaan tipe data record dalam
bahasa pemrograman pascal.
Tipe data record adalah tipe data khusus yang komponennya terdiri dari
berbagai jenis tipe data lain. Sebuah record berisi beberapa variabel lain yang
‘dipaketkan’. Konsep struktur data seperti ini sedikit mirip dengan konsep
object dalam bahasa pemrograman modern (walaupun di dalam pascal juga
terdapat konsep tentang object).
Record juga mirip dengan array, dimana kita bisa membuat sebuah variabel
yang berisi berbagai element. Perbedaannya, record bisa menampung
berbagai jenis tipe data, tidak hanya 1 tipe data seperti array. Untuk membuat
record di dalam pascal, kita bisa mendeklarasikannya di bagian type atau di
bagian var. Jika digunakan di dalam bagian var, cara penulisannya adalah
sebagai berikut:
var
nama_record:
record
variabel: tipe_data;
variabel: tipe_data;
variabel: tipe_data;
end;
siswa.nama:= 'Anto';
siswa.umur:= 17;
siswa.sekolah:= 'SMA 1 Durian Runtuh';
siswa.kota:= 'Pelembang';
writeln('Nama : ',siswa.nama);
writeln('Umur : ',siswa.umur);
writeln('Sekolah : ',siswa.sekolah);
writeln('Kota : ',siswa.kota);
readln;
end.