Minggu, 16 September 2018

Tugas Pertemuan 4 PBOB

Ticket Machine Dengan Blue J

Tampilan Awal

Setelah memasukan Tiket dan jumlah tiket

Akan Muncul menu Baru dan pada Gambar ini menginput uang.

Ticket terprint
Class Ticket Machine

  public class TicketMachine   
  {   
   public int balance;   
   private int price;   
   private int total;   
   public TicketMachine(int ticketCost,int ticketMany)   
   {   
    balance=0;   
    price=ticketCost;   
    total=ticketMany;   
   }   
   /**   
   * Method for Ticket Machine   
   * Balance, Price, Insert Money   
   */   
   public int getBalance()   
   {   
    return balance;   
   }   
   public int getPrice()   
   {   
    return price;  
   }   
   public int getAvaiability()  
   {  
    return total;  
   }  
   public void insertMoney(int money)   
   {   
    balance = balance + money;   
   }   
   public void printTicket()   
   {   
    if(price<=balance){   
     int a = getPrice();   
     while(total>0 && balance!=0){   
      System.out.println(".----------------------");   
      System.out.println("|| Ticket CommuterTrain ");   
      System.out.println("|| Price : " + price + " rupiah ");   
      System.out.println(";______________________");   
      total--;   
     //menunjukkan sisa uang   
      balance = balance - a;   
     }   
    }   
    else {   
     System.out.println("Insufficent Money");   
    }   
   }   
  }   

Class Main
  /**   
  * Program ticket machine   
  * @author Carlo Win Marshal   
  * Version 1.00 Beta   
  */   
  import java.util.Scanner;   
  public class Main   
  {   
   public static void Main()   
   {   
    System.out.println("Welcome to the AutoTick'it");   
    System.out.println("Pleace select your ticket price (idr)");   
    System.out.println("2 Stations : 10000");   
    System.out.println("3 stations : 14000");   
    System.out.println("4 Stations : 17000");   
    System.out.println("5 Stations : 22000");   
    System.out.println("Please ask our authorized staffs for station info");   
    Scanner sc = new Scanner(System.in);   
    int cost, menu, many, sisa;   
    char yes='y';   
    System.out.print("Input your ticket price : ");   
    cost = sc.nextInt();   
    System.out.print("Input how many ticket (1 ticket/passenger) : ");   
    many = sc.nextInt();   
    TicketMachine tiket = new TicketMachine(cost,many);   
    while(true)   
    {   
    System.out.println("\nMenu");   
    System.out.println("1. Get Price");   
    System.out.println("2. Check Avaiability");   
    System.out.println("3. Insert Money");   
    System.out.println("4. Print Ticket");   
    System.out.println("5. Get Balance");   
    System.out.println("6. Take the remaining money");  
    System.out.println("7. Exit");   
    menu = sc.nextInt();   
    if(menu==7) {   
     sisa = tiket.getBalance();   
     if(sisa > 0) {   
      System.out.println("Are you sure ? You still have some money left. (y/n)");   
      yes = sc.next().charAt(0);   
     }   
     while(true){   
     if(yes=='y') {   
      break;   
     }   
     else if(yes=='n'){   
      break;   
     }   
     else {   
      System.out.println("Invalid Input");   
      break;   
     }   
    }   
    if(yes=='y'){   
     System.out.println("Thank You For Using AutoTick'it");   
     break;   
    }   
    if(yes=='n')continue;   
    }   
    int uang;   
    switch(menu)   
    {   
     case 1:   
     cost=tiket.getPrice();   
     System.out.println("Cost : "+cost+" Rupiah");   
     break;   
     case 2:   
     System.out.println("Ticket Left : "+tiket.getAvaiability());  
     break;   
     case 3:   
     uang=sc.nextInt();   
     tiket.insertMoney(uang);   
     break;   
     case 4:   
     tiket.printTicket();   
     break;   
     case 5:   
     System.out.println("Balance : "+tiket.getBalance()+" Rupiah");   
     break;  
     case 6:  
     System.out.println("All the remaining money has been taken");   
     tiket.insertMoney(-tiket.getBalance());  
     break;   
    }   
   }   
   }   
  }   

Tidak ada komentar:

Posting Komentar