program menumakanan;
uses wincrt;
var
ut, bth,btr,bks,st,n: longint;
a: char;
begin
write('Masukan nominal uang : Rp ');readln(ut);
if (ut < 1000) then
begin
writeln('+========================================================+');
writeln('|====Maaf uang anda tidak cukup untuk memesan makanan====|');
writeln('|== Uang minimal untuk memesan makanan adalah Rp 1000, ==|');
writeln('+========================================================+')
end
else
begin
repeat
clrscr;
writeln('|Uang anda saat ini : Rp ',ut);
writeln('+=================================+');
writeln('| Menu Mkanan Warung Mbok Darmi |');
writeln('|=================================|');
writeln('| No | Nama makanan | Harga |');
writeln('|---------------------------------|');
writeln('| 1. | Batagor | Rp 1.000 |');
writeln('| 2. | Bakso | Rp 2.000 |');
writeln('| 3. | Soto | Rp 3.000 |');
writeln('+=================================+');
writeln('| 4. Untuk keluar |');
writeln('| 5. Untuk tambah uang |');
writeln('+=================================+');
write('Pilih nomer menu : ');readln(a);
case a of
'1': begin
clrscr;
writeln ('+=======================+');
writeln ('| No | Jenis Batagor |');
writeln ('|=======================|');
writeln ('| 1. | Batagor Kuah |');
writeln ('| 2. | Batagor Kering |');
writeln ('+=======================+');
write('Pilih jenis Batagor : ');readln(a);
write('Banyak Pemesanan : ');readln(n);
if ut<n*1000 then
begin
writeln('+================================================================+');
writeln('|==Maaf uang anda tidak cukup untuk memesan ',n,' porsi batagor======|');
writeln('+================================================================+');
end
else
begin
if (a='1') then
bth :=bth + n
else
btr :=btr + n;
ut := ut - (n*1000);
end;
end;
'2': if ut<2000 then
writeln('===Uang anda tidak cukup untuk memesan bakso===')
else
begin
write ('Banyak pemesanan : ');readln(n);
if ut<n*2000 then
begin
writeln('+==============================================================+');
writeln('|==Maaf uang anda tidak cukup untuk memesan ',n,' porsi bakso======|');
writeln('+==============================================================+');
end
else
begin
bks:=bks+n;
ut:=ut-n*2000;
end;
end;
'3': if ut<3000 then
writeln ('===Uang anda tidak cukup untuk memesan soto===')
else
begin
write('Banyak Pemesanan : ');readln(n);
if ut<n*3000 then
begin
writeln('+==============================================================+');
writeln('|==Maaf uang anda tidak cukup untuk memesan ',n,' porsi bakso======|');
writeln('+==============================================================+');
end
else
begin
st :=st+n;
ut :=ut- n*3000;
end;
end;
'4': begin
a:='t';
end;
'5': begin
write('Masukan tambahan uang Rp.');readln(n);
ut := ut + n;
end;
end;
if (ut<1000) then
a := 't'
else
begin
write('Apakah anda ingin memesan makanan lain (y/t) : ');readln(a);
end;
until(a='t');
clrscr;
writeln ('+===================================================+');
writeln ('|============= BON PEMBAYARAN MAKANAN ==============|');
writeln ('+---------------------------------------------------+');
writeln ('| Nama makanan | jumlah memesan | Harga |');
writeln ('+===================================================+');
if (bth > 0) then
writeln ('| Batagor kuah | ',bth,' porsi | ',bth*1000,' |');
if (btr > 0) then
writeln ('| Batagor kering | ',btr,' porsi | ',btr*1000,' |');
if (bks > 0) then
writeln ('| Bakso | ',bks,' porsi | ',bks*2000,' |');
if (st > 0) then
writeln ('| Soto | ',st ,' porsi | ',st *3000,' |');
writeln ('+===================================================+');
writeln (' | Uang kembalian : Rp ', ut,' |');
writeln ('+===================================================+');
end;
end.