document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. import java.util.Scanner;
  2.  
  3. public class TicketMachine
  4. {
  5. private int price;
  6. private int balance;
  7. private int total;
  8. private int refund;
  9. private int tickets;
  10.  
  11.  
  12.  
  13. public void main(String []args)
  14. {
  15. Scanner input = new Scanner(System.in);
  16.  
  17. int a,b,c,ticketCost;
  18. System.out.println("Masukkan harga tiket : ");
  19. ticketCost=input.nextInt();
  20. TicketMachine(ticketCost);
  21. System.out.println("Masukkan total uang : ");
  22. b=input.nextInt();
  23. insertMoney(b);
  24.  
  25. printTicket();
  26.  
  27. }
  28.  
  29.  
  30. public int TicketMachine(int ticketCost)
  31. {
  32. price = ticketCost;
  33. balance = 0;
  34. total = 0;
  35. refund = 0;
  36. tickets = 0;
  37. return 0;
  38. }
  39.  
  40. public int getPrice()
  41. {
  42. return price;
  43. }
  44.  
  45. public void insertMoney(int amount)
  46. {
  47. if(amount > 0)
  48. {
  49. balance += amount;
  50. }
  51. else
  52. {
  53. System.out.println("Please inser a sensible amount of money");
  54. }
  55. }
  56.  
  57. public void printTicket()
  58. {
  59. if(balance > 0)
  60. {
  61. if(balance >= price)
  62. {
  63. tickets = purchaseTickets();
  64.  
  65. int i = 1;
  66.  
  67. while (i <= tickets)
  68. {
  69. System.out.println("--------------------");
  70. System.out.println("--Tiket Kereta Api--");
  71. System.out.println("--Ticket " + i +"-----");
  72. System.out.println("- " + price + " rupiah");
  73. System.out.println("-------------------");
  74.  
  75. i++;
  76. }
  77.  
  78. total += balance;
  79.  
  80. refund = refundBalance();
  81.  
  82. if(refund==0)
  83. {
  84. System.out.println("No Change Given");
  85. }
  86. else
  87. {
  88. System.out.println("Amount to refund: " +refund+ "rupiah");
  89. }
  90.  
  91. balance = 0;
  92. }
  93. else
  94. {
  95. System.out.println("Please inser " +(price - balance) +"more rupiah");
  96. }
  97. }
  98. else
  99. {
  100. System.out.println("Please insert a positive amount of money");
  101. }
  102. }
  103.  
  104. public int refundBalance()
  105. {
  106. int amountToRefund;
  107.  
  108. amountToRefund = balance - price * tickets;
  109.  
  110. balance = 0;
  111.  
  112. return amountToRefund;
  113. }
  114.  
  115. public int purchaseTickets()
  116. {
  117. int numberOfTickets;
  118.  
  119. numberOfTickets = balance / price;
  120.  
  121. return numberOfTickets;
  122. }
  123. }
');