Advertisement
Febriyan14

Untitled

Nov 11th, 2023
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.72 KB | None | 0 0
  1. program TokoPayung;
  2.  
  3. uses crt;
  4.  
  5. const
  6.   HargaSatuan = 40000;
  7.   BatasDiscount = 300000;
  8.   PersenDiscount = 15;
  9.  
  10. type
  11.   Pembeli = record
  12.     Nama: string;
  13.     Banyaknya: integer;
  14.     JumlahHarga: integer;
  15.     Discount: real;
  16.     TotalBayar: real;
  17.   end;
  18.  
  19. var
  20.   DataPembeli: array of Pembeli;
  21.   JumlahPembeli, i: integer;
  22.  
  23. procedure HitungTotalBayar(var data: Pembeli);
  24. begin
  25.   data.JumlahHarga := data.Banyaknya * HargaSatuan;
  26.   if data.JumlahHarga >= BatasDiscount then
  27.   begin
  28.     data.Discount := (PersenDiscount / 100) * data.JumlahHarga;
  29.     data.TotalBayar := data.JumlahHarga - data.Discount;
  30.   end
  31.   else
  32.   begin
  33.     data.Discount := 0;
  34.     data.TotalBayar := data.JumlahHarga;
  35.   end;
  36. end;
  37.  
  38. begin
  39.   clrscr;
  40.  
  41.   writeln('Program Toko Payung');
  42.   writeln('-------------------');
  43.   write('Masukan Jumlah Pembeli : ');
  44.   readln(JumlahPembeli);
  45.  
  46.   SetLength(DataPembeli, JumlahPembeli);
  47.  
  48.   for i := 0 to JumlahPembeli - 1 do
  49.   begin
  50.     writeln('Masukan data ke ', i + 1);
  51.     write('Nama : ');
  52.     readln(DataPembeli[i].Nama);
  53.     write('Banyaknya : ');
  54.     readln(DataPembeli[i].Banyaknya);
  55.  
  56.     // Hitung total bayar untuk setiap pembeli
  57.     HitungTotalBayar(DataPembeli[i]);
  58.   end;
  59.  
  60.   // Menampilkan hasil
  61.   writeln('Hasil Perhitungan');
  62.   writeln('-----------------');
  63.   for i := 0 to JumlahPembeli - 1 do
  64.   begin
  65.     writeln('Pembeli ke-', i + 1);
  66.     writeln('Nama        : ', DataPembeli[i].Nama);
  67.     writeln('Banyaknya   : ', DataPembeli[i].Banyaknya);
  68.     writeln('Jumlah Harga: ', DataPembeli[i].JumlahHarga:0:2);
  69.     writeln('Discount    : ', DataPembeli[i].Discount:0:2);
  70.     writeln('Total Bayar : ', DataPembeli[i].TotalBayar:0:2);
  71.     writeln;
  72.   end;
  73.  
  74.   readln;
  75. end.
  76.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement