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 :
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
Post a Comment