UTS - PBO - Membuat Sistem Parkir Elektronik

UTS - Pemrograman Berbasis Objek
Membuat Sistem Parkir Elektronik dengan menggunakan  program BlueJ
Nama : Bastian Farandy
NRP : 05111740000190
Kelas : Pemrograman Berbasis Objek A
Source Code :

Menu

 /**   
  * Write a description of class main here.   
  *   
  * @author Bastian Farandy   
  * @version 0.00001   
  */   
  import java.util.Scanner;    
  public class Menu   
  {    
   public static void main(String args[])    
   {   
   System.out.print('\u000C');   
   System.out.println("Selamat Datang di Sistem Parkir Elektronik");  
   System.out.println("Pemerintah Kota Surabaya");   
   System.out.println("Masukkan Saldo anda :");    
   Scanner scan= new Scanner(System.in);    
   int SaldoAwal;  
   int wktupar;  
   int modelkend;  
   String nopolkendaraan;   
   SaldoAwal = scan.nextInt();   
   ParkirMet ParMet=new ParkirMet(SaldoAwal);  
   wktupar = ParMet.waktuParkir;  
   modelkend = ParMet.modelKendaraan;  
   ParMet.tampilanMenu();  
   System.out.println("Pilih Jenis Kendaraan Anda :");  
   System.out.println("1. Motor");   
   System.out.println("2. Mobil");   
   System.out.println("Pilih (1/2) :");  
   modelkend = scan.nextInt();  
   ParMet.ModelKendaraan(modelkend);   
   ParMet.tampilanMenu();  
   nopolkendaraan = scan.nextLine();  
   System.out.println("Masukkan Nomor Polisi Kendaraan Anda :");  
   nopolkendaraan = scan.nextLine();  
   ParMet.nopolKend(nopolkendaraan);  
   ParMet.tampilanMenu();  
   System.out.println("Masukkan Lama Waktu anda Parkir :");  
   System.out.println("1. 60 Menit");  
   System.out.println("2. 120 Menit");  
   System.out.println("3. 180 Menit");  
   System.out.println("4. 240 Menit");  
   System.out.println("5. Lebih dari 240 Menit");  
   wktupar = scan.nextInt();  
   ParMet.WaktuParkir(wktupar);  
   ParMet.bayar();  
   if(ParMet.bayar()!=0)  
   {  
     ParMet.tampilanMenu();  
     System.out.println("Lama Waktu : "+ParMet.WaktuPar());  
     System.out.println("Nomor Polisi : "+ParMet.nopolk());  
     System.out.println("Jenis Kendaraan : "+ParMet.ModelKend());  
     System.out.println("Harga : "+ParMet.hargatot());  
     System.out.println("Saldo Akhir : "+ParMet.updateSaldo());  
   }  
   else  
   {  
      System.out.println("Saldo anda tidak mencukupi. Silahkan ulang dari awal.");  
   }   
  }  
 }  

ParkirMeter

 /**  
  * Write a description of class Menu here.  
  *  
  * @author Bastian Farandy  
  * @version 0.1  
  */  
 public class ParkirMet  
 {  
   public int modelKendaraan;  
   public int waktuParkir;  
   public int Saldo;  
   public String nopol;  
   public int bayar;  
   public int harga;  
   public ParkirMet(int SaldoAwl)  
   {  
     Saldo = SaldoAwl;      //Saldo awal pengguna  
     waktuParkir = 0;       //waktu sebelum diisikan (0)  
     modelKendaraan = 1;     //2 untuk mobil, 1 untuk motor  
   }  
   public void WaktuParkir(int wktuPar)  
   {  
     waktuParkir = wktuPar;  
   }  
   public void ModelKendaraan(int MdlKen)  
   {  
     modelKendaraan = MdlKen;  
     if(modelKendaraan == 1)  
     {  
       harga = 2000;  
     }  
     else if(modelKendaraan == 2)  
     {  
       harga = 3000;  
     }  
   }  
   public void tampilanMenu()  
   {  
    System.out.print('\u000C');   
    System.out.println("---------------------------------------------");   
    System.out.println("-----------Sistem Parkir Elektronik----------");  
    System.out.println("-----------Pemerintah Kota Surabaya----------");   
    System.out.println("---------------------------------------------");  
   }  
   public void nopolKend(String nopolken)  
   {  
     nopol = nopolken;  
   }  
   public int ModelKend()  
   {  
     return(modelKendaraan);  
   }  
   public int WaktuPar()  
   {  
     return(waktuParkir);  
   }  
   public String nopolk()  
   {  
     return(nopol);  
   }  
   public int bayar()  
   {  
     if(modelKendaraan==1)  
     {  
       if(waktuParkir<5)  
       {  
         bayar = waktuParkir*harga;  
       }  
       else  
       {  
         bayar = 15000;  
       }  
     }  
     else if(modelKendaraan == 2)  
     {  
       if(waktuParkir<5)  
       {  
         bayar = waktuParkir*harga;  
       }  
       else  
       {  
         bayar = 10000;  
       }  
     }  
     if(Saldo>bayar)  
     {  
       Saldo = Saldo - bayar;  
       return(bayar);  
     }  
     else  
     {  
       System.out.println("Saldo anda Tidak mencukupi.");  
       return(0);  
     }  
   }  
   public int updateSaldo()  
   {  
     return(Saldo);  
   }  
   public int hargatot()  
   {  
     return(bayar);  
   }  
 }  

Screenshot






Keterangan :
Tarif parkir per satuan jam adalah 2000(motor) dan 3000(mobil)
Jika parkir lebih dari 4 jam, maka akan dikenakan tarif maksimal : 10000(motor) dan 15000(mobil)
Fitur Opsi Bahasa belum ada

Comments

Popular posts from this blog

PWEB5 - Membuat Form Pembayaran Air

MPPL1 - Mendeskripsikan Proyek

PBO1 - Biodata dengan BlueJ