Field Record Bertipe Array
Jika Dalam Suatu Record Terdapat Beberapa Field Yang Sama Tipenya Dapat Digunakan Array. Contoh Ada Data Barang Yang Mempunyai Struktur.
Nama Barang -> Bertipe String
Jumlah Unit Barang Ke 1 -> Bertipe Byte
Jumlah Unit Barang Ke 2 -> Bertipe Byte
Jumlah Unit Barang Ke 3 -> Bertipe Byte
Terlihat Bahwa Jumlah Unit Barang 1,2,3 Bertipe Sama. Dalam Hal Ini Dapat Digunakan Array Ber Index 1.. 3 Untuk Mempersingkat Filed Jumlah Unit Barang.
Contoh :
program penggunaan_field_record_tipe_array;
uses crt;
type
data_brg = record
namaBrg : string[15];
unitBrg : array[1..3] of byte;
end;
var
Barang : array[1..10] of data_brg;
i,j,banyak,Jum1,jum2,jum3 : integer;
begin
jum1 :=0;
jum2 :=0;
jum3 :=0;
write('Banyak record Max 10 ='); readln(banyak);
for i:= 1 to banyak do
begin
with barang[i] do
begin
writeln('Record ke -',i);
write('Nama barang =');readln(namabrg);
for j:= 1 to 3 do
begin
write('Unit barang ke- ',j,'= ');readln(unitbrg[j]);
end;
end;
end;
clrscr;
writeln(' ------------------------------- ');
writeln('Nama barang unit 1 unit2 unit3');
writeln(' ------------------------------- ');
{ cetak data }
for i:= 1 to banyak do
begin
with barang[i] do
begin
jum1:=jum1+unitbrg[1];
jum2:=jum2+unitbrg[2];
jum3:=jum3+unitbrg[3];
writeln(namabrg:15,unitbrg[1]:5,unitbrg[2]:5,unitbrg[3]:5);
end;
end;
writeln(' ------------------------------- ');
writeln('Jumlah unit 1 =',jum1:6);
writeln('Jumlah unit 2 =',jum2:6);
writeln('Jumlah unit 3 =',jum3:6); readln;
end.
Last updated
Was this helpful?