Algoritma dan Program Pengisian BBM Pada SPBU

Posted in
Algoritma:
  Deklarasi
    jenis  : char
    pilih  : integer
    jumlah : float
    L      : float
    rp     : float
  Deskripsi
    if(jenis=premium/pertamax/solar dan pilih=rp)
      for (a=0;a<=L;a+=0.1)
      jumlah=(a+0.1)*harga
    then
      write (jumlah)
    endif
    endfor

    else if(jenis=premium/pertamax/solar dan pilih=L)
      for (b=0;b<=L;b+=500)
      jumlah=(b+500)*harga
    then
     write (jumlah)
    endif
    endfor
    end

Programnya:

#include <iostream.h>
#include <conio.h>
class BBM{
public:
   pilihan();
   transaksi();
   hasil();
private:
   char jenis;
   int pilih;
   float jumlah, L, rp;};
BBM::pilihan(){
   cout << "Pilih Jenis BBM\n";
   cout << "Premium  : p\nSolar    : s\nPertamax : x\n";}
BBM::transaksi(){
   do{cout << "Masukkan Kode Jenis BBM: ";cin >> jenis;}
   while((jenis!='p')&&(jenis!='s')&&(jenis!='x'));
   cout << "\nJenis Pembelian\n";
   cout << "Liter : 1\nUang  : 2";
   do{cout << "\nMasukkan Kode Jenis Pembelian: ";cin >>pilih;}
   while((pilih!=1)&&(pilih!=2));
   if (pilih ==1)
   {cout << "\nBerapa liter ?\n";cin >> L;}
    else
   {cout << "\nWani Piro ? Rp.";cin >> rp;}}
BBM::hasil(){
   if (jenis=='p'&&pilih==1){
   for (float a=0;a<=L;a+=0.1){
   jumlah = (a+0.1)* 4500;
   cout << a+0.1<<" Liter" << " ===> "<<"Rp. "<<jumlah<<endl;}
   cout << "Anda harus membayar: Rp. "<<jumlah<<endl;}
   else if (jenis=='p'&& pilih==2){
   for (float b=0;b<rp;b+=500){
   jumlah = (b+500)/ 4500;
   cout <<"Rp. "<< b+500 << " ===> "<<jumlah<<" Liter"<<endl;}
   cout << "Anda mengisi: "<<jumlah<<" Liter"<<endl;}
if (jenis=='s'&&pilih==1){
   for (float c=0;c<L;c+=0.1){
   jumlah = (c+0.1)* 4500;
   cout << c+0.1 <<" Liter"<< " ===> "<<"Rp. "<<jumlah<<endl;}
   cout << "Anda harus membayar: Rp. "<<jumlah<<endl;}
else if (jenis=='s'&& pilih==2){
   for (float d=0;d<rp;d+=500){
   jumlah = (d+500)/ 4500;
   cout <<"Rp. "<< d+500 << " ===> "<<jumlah<<" Liter"<<endl;}
   cout << "Anda mengisi: "<<jumlah<<" Liter"<<endl;}
if (jenis=='x'&&pilih==1){
   for (float e=0;e<L;e+=0.1){
   jumlah = (e+0.1)* 8800;
   cout << e+0.1 <<" Liter"<< " ===> "<<"Rp. "<<jumlah<<endl;}
   cout << "Anda harus membayar: Rp. "<<jumlah<<endl;}
else if (jenis=='x'&& pilih==2){
   for (float f=0;f<rp;f+=500){
   jumlah = (f+500)/ 8800;
   cout <<"Rp. "<< f+500 << " ===> "<<jumlah<<" Liter"<<endl;}
   cout << "Anda mengisi: "<<jumlah<<" Liter"<<endl;}}
int main(){
   BBM q;
   q.pilihan();
   q.transaksi();
   q.hasil();
getch ();
return 0;}