Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program TokoPayung;
- uses crt;
- const
- HargaSatuan = 40000;
- BatasDiscount = 300000;
- PersenDiscount = 15;
- type
- Pembeli = record
- Nama: string;
- Banyaknya: integer;
- JumlahHarga: integer;
- Discount: real;
- TotalBayar: real;
- end;
- var
- DataPembeli: array of Pembeli;
- JumlahPembeli, i: integer;
- procedure HitungTotalBayar(var data: Pembeli);
- begin
- data.JumlahHarga := data.Banyaknya * HargaSatuan;
- if data.JumlahHarga >= BatasDiscount then
- begin
- data.Discount := (PersenDiscount / 100) * data.JumlahHarga;
- data.TotalBayar := data.JumlahHarga - data.Discount;
- end
- else
- begin
- data.Discount := 0;
- data.TotalBayar := data.JumlahHarga;
- end;
- end;
- begin
- clrscr;
- writeln('Program Toko Payung');
- writeln('-------------------');
- write('Masukan Jumlah Pembeli : ');
- readln(JumlahPembeli);
- SetLength(DataPembeli, JumlahPembeli);
- for i := 0 to JumlahPembeli - 1 do
- begin
- writeln('Masukan data ke ', i + 1);
- write('Nama : ');
- readln(DataPembeli[i].Nama);
- write('Banyaknya : ');
- readln(DataPembeli[i].Banyaknya);
- // Hitung total bayar untuk setiap pembeli
- HitungTotalBayar(DataPembeli[i]);
- end;
- // Menampilkan hasil
- writeln('Hasil Perhitungan');
- writeln('-----------------');
- for i := 0 to JumlahPembeli - 1 do
- begin
- writeln('Pembeli ke-', i + 1);
- writeln('Nama : ', DataPembeli[i].Nama);
- writeln('Banyaknya : ', DataPembeli[i].Banyaknya);
- writeln('Jumlah Harga: ', DataPembeli[i].JumlahHarga:0:2);
- writeln('Discount : ', DataPembeli[i].Discount:0:2);
- writeln('Total Bayar : ', DataPembeli[i].TotalBayar:0:2);
- writeln;
- end;
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement