Listing Syntax Tugas PD 2 (Record+array)
useswincrt;
typedat =record
nama, jenis :string;
saldo, sisa:longint
end;
lar=array[1..50] of dat;
si=array[1..100] of longint;
var
pil,i,j:longint;
data:lar;
lagi:char;
sis,sal:si;
nam,jns:string;
label utama;
begin
utama:
clrscr;
writeln(' ============================================= ');
writeln(' Data Stock Pulsa WARUNG BAROKAH ');
writeln(' ============================================= ');
writeln;
writeln;
writeln;
writeln(' Menu program ');
writeln(' 1.Input Data');
writeln(' 2.Stock & Saldo ');
writeln(' 3.Transaksi ');
writeln(' 4.exit ');
writeln;
write(' Pilih Menu --> ');readln(pil);
case pil of
1:
begin
clrscr;
lagi:='y';
repeat
inc(i);
writeln;
writeln('Isi data ke- ',i);
write('Nama Voucher ==> ');readln(data[i].nama);
write('Jenis Voucher ==> ');readln(data[i].jenis);
write('Jumlah Saldo Yang disediakan ==> ');readln(data[i].saldo);
data[i].sisa:=data[i].saldo;
writeln;
write('Apakah mau memasukan data lagi? [y/t]');readln(lagi);
until lagi='t';
goto utama;
end;
2:
begin
clrscr;
writeln(' ------------------------------------------------------ ');
writeln(' Nama | Jenis | Saldo | Sisa ');
writeln(' -------------------------------------------------------');
for j:=1 to i do
begin
writeln('|':2,data[j].nama:4,'|':6,data[j].jenis:6,'|':7,data[j].saldo:8,'|':9,data[j].sisa:6,'|':2);
end;
readln;
goto utama; end;
3:
begin
clrscr;
Writeln;
lagi:='y';
repeat
write('Masukan Nama Voucher yang dibeli ==> ');readln(nam);
write('Masukan Jenis Voucher yang dibeli ==>');readln(jns);
for j:=1 to i do
if (nam = data[j].nama) and (jns=data[j].jenis) then
begin
write('Masukan Jumlah Saldo yang dibeli ==> ');readln(sal[j]);
sis[j]:=sal[j] ;
data[j].sisa:=data[j].sisa-sis[j];
readln;
goto utama;
end;
write('Voucher tidak tersedia, anda mau yang lain? [y/t]');readln(lagi);
until lagi='t';
goto utama;
end;
4:
begin
exit;
end;
end;
readln;
end.
Atau download Listing syntax (txt) di tab menu Kuliah-Tugas-Pemrograman Dasar...!!!!!