BenitoDannes

PBO-2.2-1-UITicketMachine

Mar 5th, 2017
310
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.62 KB | None | 0 0
  1. /**
  2.  * User-Interface untuk TicketMachine.
  3.  * Dibuat untuk input uang dan output harga tiket serta mencetak tiket.
  4.  *
  5.  * Benito Dannes
  6.  * 29 February 2017
  7.  */
  8. import java.util.Scanner;
  9. public class UITicketMachine
  10. {
  11.     public static void main (String args[])
  12.     {
  13.         Scanner scan = new Scanner (System.in);
  14.         int cost, menu;
  15.         int i, n;
  16.         cost = 20;
  17.        
  18.         /***
  19.          * Pilihan ditampilkan menggunakan switch case. Selanjutnya menggunakan while.
  20.          */
  21.         TicketMachine ticket = new TicketMachine (cost);
  22.         System.out.println ("1. Get Price"); // Menampilkan harga tiket
  23.         System.out.println ("2. Get Balance"); // Menampilkan jumlah uang yang pengguna masukkan, atau sisa setelah transaksi
  24.         System.out.println ("3. Insert Money"); // Memasukkan uang kedalam mesin
  25.         System.out.println ("4. Print Ticket"); // Mencetak tiket, mengurangi uang pengguna didalam mesin
  26.         System.out.println ("5. End Transaction"); // Mengakhiri transaksi, mengeluarkan uang sisa pelanggan
  27.         System.out.println ("0. Turn off machine"); // Mematikan mesin. Mengakhiri sesi.
  28.        
  29.         System.out.print ("Insert input number to continue: ");
  30.         menu = scan.nextInt();
  31.         while (menu != 0)
  32.         {
  33.             switch (menu)
  34.             {
  35.                 case 1: // Get Price
  36.                 System.out.println();
  37.                 cost  = ticket.getPrice();
  38.                 System.out.println ("The ticket price is " + cost + " pounds.");
  39.                 break;
  40.            
  41.                 case 2: // Get Balance
  42.                 System.out.println();
  43.                 System.out.println ("Money in machine " + ticket.getBalance() + " pounds.");
  44.                 break;
  45.            
  46.                 case 3: // Insert Money
  47.                 System.out.println();
  48.                 System.out.print ("Insert money amount: ");
  49.                 int money = scan.nextInt();
  50.                 ticket.insertMoney (money);
  51.                 break;
  52.            
  53.                 case 4: // Print Ticket
  54.                 System.out.println();
  55.                 System.out.print ("Insert amount of ticket: ");
  56.                 n = scan.nextInt();
  57.                 for (i = 1; i <= n; i++)
  58.                 {
  59.                     ticket.printTicket();
  60.                     if (i != n)
  61.                     {
  62.                         System.out.println ("=====CUT HERE=====");
  63.                         System.out.println();
  64.                     }
  65.                 }
  66.                 break;
  67.                
  68.                 case 5: // End Transaction
  69.                 System.out.println();
  70.                 System.out.println("Thank you for using our service!");
  71.                 System.out.println("Please withdraw your remaining money: " + ticket.refundBalance() + " pounds");
  72.                 break;
  73.             }
  74.             System.out.println();
  75.             System.out.println ("1. Get Price");
  76.             System.out.println ("2. Get Balance");
  77.             System.out.println ("3. Insert Money");
  78.             System.out.println ("4. Print Ticket");
  79.             System.out.println ("5. End Transaction");
  80.             System.out.println ("0. Turn off machine");
  81.            
  82.             System.out.print ("Insert input number to continue: ");
  83.             menu = scan.nextInt();
  84.         }
  85.         /***
  86.          * Mesin dimatikan. Sesi diakhiri dan jumlah total uang yang diperoleh pada sesi itu akan ditampilkan.
  87.          */
  88.         System.out.println("Shutting down systems...");
  89.         System.out.println("Total income this session: " + ticket.totalIncome() + " pounds");
  90.     }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment