Pengertian array dan record
- Array
Suatu array adalah sebuah struktur data yang terdiri atas banyak variabel dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu: variabel).Cara Pendefinisian
• contoh type
A = array [1..6] of integer;
• Secara logika pendefinisian array di atas merupakan sekumpulan kotak , dimana tiap kotak mempunyai nilai indeks integer 1, 2, 3, ...,6 tiap elemen array ditandai dengan:
A[1], A[2], A[3], A[4], A[5], A[6]
untuk mengisi elemen array misal A[1]:=4;.Sifat Array Array merupakan struktur data yang statis, yaitu jumlah elemen yang ada harus ditentukan terlebih dahulu dan tak bisa di ubah saat program berjalan.
• contoh type
A = array [1..6] of integer;
• Secara logika pendefinisian array di atas merupakan sekumpulan kotak , dimana tiap kotak mempunyai nilai indeks integer 1, 2, 3, ...,6 tiap elemen array ditandai dengan:
A[1], A[2], A[3], A[4], A[5], A[6]
untuk mengisi elemen array misal A[1]:=4;.Sifat Array Array merupakan struktur data yang statis, yaitu jumlah elemen yang ada harus ditentukan terlebih dahulu dan tak bisa di ubah saat program berjalan.
- Record
- Mendeklarasikan Record
Masih ingat kuliah mengenai tipe data? Dalam Pascal, semua variabel
harus dideklarasikan sebelum bisa dipakai. Sebagai contoh, kitaingin
memakai variabel dengan nama Nama untuk dimasukkan nilai nama-nama mahasiswa. Kita akan mendefinisikannya menjadi:var Nama: String[80]; Dari kode di atas kita memberitahukan ke Pascal bahwa kita akan memakai variabel Nama yang tipe datanya string dan kita alokasikan panjang stringnya 80 karakter.
Nah,
dalam Pascal, kita dimungkinkan untuk memiliki judul tipe data yang
kita definisikan sendiri. Misalkan kita ingin mengganti judul tipe data integer dengan bilanganBulat. Dalam Pascal, kita definisikan ini dengan:
type bilanganBulat = integer;
Perhatikan
beda pendefinisian variabel dan pendefinisian type. Untuk pendefinisian
variabel kita menggunakan titik dua (:), sedangkan pendefinisian type
kita menggunakan sama dengan (=). Untuk mendeklarasikan record, kita memakai reserved word record, diikuti dengan daftar field dan diakhiri dengan end. Berikut adalah contoh dari deklarasi sebuah record.
type recMhs = record;
nama : string[80];
NPM : string[8];
nilai : integer;end;
2. Contoh Program
Program ini adalah program biodata mahasiswa berkut sytaks dan screenshoot programnya :
Program
Biodata_Mahasiswa;
uses crt;
Type Rec = Record
Nama : String;
NIM : String;
tl : string;
Umur : Longint;
end;
var Data : array[1..50] of Rec;
n,i : integer;
pilih : string;
Procedure Input;
Begin
clrscr;
n:=0;
repeat
clrscr;
inc(n);
writeln('|===================================|');
writeln('| BIODATA MAHASISWA |');
writeln('|===================================|');
writeln('| Data ke-',n,' |');
writeln('|===================================|');
with Data[n] do
begin
writeln('|===================================|');
writeln('| Nama : |');
writeln('| NIM : |');
writeln('| Tanggal Lahir : |');
writeln('| Umur : Tahun |');
writeln('|===================================|');
gotoxy(19,7);readln(Nama);
gotoxy(19,8);readln(NIM);
gotoxy(19,9);readln(tl);
gotoxy(19,10);readln(Umur);
end;
writeln;
write('Input Data Lagi? [Y/N] : ');readln(Pilih);
Until ((Pilih='n') or (Pilih='N'));
end;
Procedure Output;
Begin
clrscr;
writeln('|==================================================================|');
writeln('| BIODATA MAHASISWA |');
writeln('|================================================|=================|');
writeln('| Nama | NIM | Umur | Tanggal Lahir |');
writeln('|=======================|===========|============|=================|');
for i:=1 to n do
begin
writeln('| | | | |');
with Data[i] do
begin
gotoxy(3,5+i);writeln(Nama);
gotoxy(27,5+i);writeln(NIM);
gotoxy(43,5+i);writeln(Umur);
gotoxy(52,5+i);writeln(tl);
end;
end;
writeln('|==================================================================|');
readkey;
end;
Begin
repeat
clrscr;
writeln('|======================|');
writeln('| Menu Utama |');
writeln('| 1. Masukkan Data |');
writeln('| 2. Lihat Data |');
writeln('| 3. Keluar |');
writeln('|======================|');
writeln('| |');
writeln('| Masukkan Pilihan : |');
writeln('|======================|');
gotoxy(22,8);readln(Pilih);
case Pilih of
'1' : Input;
'2' : Output;
'3' : Exit;
else write('Input slah, input ulang!');
end;
Until (Pilih)='3';
end.
uses crt;
Type Rec = Record
Nama : String;
NIM : String;
tl : string;
Umur : Longint;
end;
var Data : array[1..50] of Rec;
n,i : integer;
pilih : string;
Procedure Input;
Begin
clrscr;
n:=0;
repeat
clrscr;
inc(n);
writeln('|===================================|');
writeln('| BIODATA MAHASISWA |');
writeln('|===================================|');
writeln('| Data ke-',n,' |');
writeln('|===================================|');
with Data[n] do
begin
writeln('|===================================|');
writeln('| Nama : |');
writeln('| NIM : |');
writeln('| Tanggal Lahir : |');
writeln('| Umur : Tahun |');
writeln('|===================================|');
gotoxy(19,7);readln(Nama);
gotoxy(19,8);readln(NIM);
gotoxy(19,9);readln(tl);
gotoxy(19,10);readln(Umur);
end;
writeln;
write('Input Data Lagi? [Y/N] : ');readln(Pilih);
Until ((Pilih='n') or (Pilih='N'));
end;
Procedure Output;
Begin
clrscr;
writeln('|==================================================================|');
writeln('| BIODATA MAHASISWA |');
writeln('|================================================|=================|');
writeln('| Nama | NIM | Umur | Tanggal Lahir |');
writeln('|=======================|===========|============|=================|');
for i:=1 to n do
begin
writeln('| | | | |');
with Data[i] do
begin
gotoxy(3,5+i);writeln(Nama);
gotoxy(27,5+i);writeln(NIM);
gotoxy(43,5+i);writeln(Umur);
gotoxy(52,5+i);writeln(tl);
end;
end;
writeln('|==================================================================|');
readkey;
end;
Begin
repeat
clrscr;
writeln('|======================|');
writeln('| Menu Utama |');
writeln('| 1. Masukkan Data |');
writeln('| 2. Lihat Data |');
writeln('| 3. Keluar |');
writeln('|======================|');
writeln('| |');
writeln('| Masukkan Pilihan : |');
writeln('|======================|');
gotoxy(22,8);readln(Pilih);
case Pilih of
'1' : Input;
'2' : Output;
'3' : Exit;
else write('Input slah, input ulang!');
end;
Until (Pilih)='3';
end.
Sekian Terima Kasih, mohon ma'af jika ada kekhilafan. Semoga bermanfaat. :) =))
ijin sedot gan.. buat tugas kuliah..
BalasHapussilakan gan, cendolnya gan
BalasHapus