Langsung ke konten utama

Tugas 3 PBO A

Hey guys! This time I have been working on making my own Ticket Machine using BlueJ.
I am using 2 classes, which is Main and TicketMachine.
  1. TicketMachine

     /*  
      * This class contains the declaration of the Ticket Machine we are going to use..  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (17/9/2018)  
      */  
     import java.util.Scanner;  
       
     public class TicketMachine{   
       Scanner scan = new Scanner(System.in);  
       // The price of a ticket from this machine.   
       private int price;   
       // The amount of money entered by a customer so far.   
       private int balance;  
       // The amount of tickets about to be printed.  
       private int ticket;  
       // The total amount of money collected by this machine.   
       private int total;  
       /*   
        * Create a machine that issues tickets of the given price.   
        * Note that the price must be greater than zero, and there   
        * are no checks to ensure this.   
        */   
       public TicketMachine(int ticketCost){   
         price = ticketCost;   
         balance = 0;   
         total = 0;  
         ticket = 0;  
       }   
       /*   
        * Return the price of a ticket.   
        */   
       public int getPrice() {   
         return price;   
       }   
       /*   
        * Return the amount of money already inserted for the   
        * next ticket.   
        */   
       public int getBalance(){   
         return balance;   
       }   
       /*   
        * Receive an amount of money in cents from a customer.   
        */   
       public int insertMoney(int amount){  
         balance = balance + amount;  
         return balance;  
       }   
       /*   
        * Print a ticket.   
        * Update the total collected and   
        * reduce the balance to zero.   
        */   
       public int printTicket(int ticket){   
         // Simulate the printing of a ticket.  
         for(int i = 0; i < ticket; i++){  
           System.out.println("======================");   
           System.out.println("The BlueJ Line Ticket");    
           System.out.println("Price: Rp " + price + ",00");  
           System.out.println("======================\n");  
         }  
         // Update the total collected with the balance.   
         total = total + balance;   
         // Clear the balance and the ticket.   
         balance = balance - (ticket * price);  
         return balance;  
       }   
     }  
    
  2. Main

       
     /*  
      * This is where the main operation works.  
      *  
      * @author (Elkana Hans Widersen)  
      * @version (17/9/2018)  
      */  
     import java.util.Scanner;   
     public class main{   
       public static void main(String args[]){   
         Scanner scan = new Scanner(System.in);   
         int cost, menu, balance = 0;  
         int amount = 0;  
         boolean printed = false;  
         System.out.print("Input the ticket price: Rp ");   
         cost = scan.nextInt();  
         TicketMachine ticket = new TicketMachine(cost);  
         System.out.println();  
         while(true){   
           System.out.println("1. Get Price");  
           System.out.println("2. Get Balance");   
           System.out.println("3. Insert Money");   
           System.out.println("4. Print Ticket");  
           System.out.println("5. Exit\n");  
           System.out.print("Your input: ");  
           menu = scan.nextInt();   
           switch(menu){   
             case 1:   
             cost=ticket.getPrice();   
             System.out.println("Price: Rp " + cost + ",00\n");   
             break;   
             case 2:   
             balance = ticket.getBalance();  
             System.out.println("Balance: Rp " + balance + ",00\n");  
             break;   
             case 3:   
             int money = scan.nextInt();   
             balance = ticket.insertMoney(money);   
             break;   
             case 4:  
             System.out.print("Total tickets: ");  
             amount = scan.nextInt();  
             if(balance >= (amount * cost)){  
               balance = ticket.printTicket(amount);  
               printed = true;  
             }  
             else{  
               System.out.println("Balance insufficient. Please insert enough balance to proceed.\n");  
             }  
             break;  
             case 5: break;  
           }  
           if(menu == 5) break;  
         }  
         System.out.println("\nThank you for using BlueJ Line!\n");  
         System.out.println("Your balance: Rp " + balance + ",00");  
       }   
    }
    
    Using those codes above, it will look like this:


Thank you and see you next time!

Komentar

Postingan populer dari blog ini

Fox and Rabbit Simulator

Hi guys! I'm going to show you a Fox and Rabbit Simulator made in BlueJ. We're going to use these classes Simulator SimulatorView Location Field FieldStats Counter Randomizer Rabbit Fox Here is the source code of those classes: Simulator import java.util.Random; import java.util.List; import java.util.ArrayList; import java.util.Iterator; import java.awt.Color; /** * A simple predator-prey simulator, based on a rectangular field * containing rabbits and foxes. * * @author Elkana Hans Widersen * @version 1.0 */ public class Simulator { /** * Constants representing configuration information for the simulation. */ private static final int def_width = 50; // The default width for the grid. private static final int def_depth = 50; // The default depth of the grid. private static final double foxProbability = 0.02; // The probability that a fo...

Tugas 1 PBO A

This is my biodata compiled in Java (first time usage). Check it out! /** * Program membuat biodata menggunakan Java - BlueJ * * Author : Elkana Hans W * Version 1 , Date : 3 September 2018 */ public class biodata{ public biodata(){ System.out.print("PBO-Tugas1\n"); System.out.print("Nama\t: Elkana Hans Widersen\n"); System.out.print("Kelas\t: PBO A\n"); System.out.print("Alamat Rumah: Merak III/P2-104 Rewwin\n"); System.out.print("Email\t: elknhns@gmail.com\n"); System.out.print("Blog\t: elkanahans.blogspot.com\n"); System.out.print("No HP/WA: 082143646716\n"); System.out.print("Twitter\t: @elknhns\n"); } }

Tugas PBO Psychological Support Chatbot

Hi! We're back again! This time I'm going to show you my recent project on making a chatbot for technical support, called Monokuro Boo. It's great for you if you have traumas, problems, distress, etc. I'm using 3 classes for this chatbot, which are: SupportSystem InputReader Responder These are the source code. Check it out! SupportSystem /** * The main class for the support system, consisting greetings template. * * @author (Elkana Hans Widersen) * @version (08.10.2018) */ public class SupportSystem { private InputReader reader; private Responder responder; /** * Creates a technical support system. */ public SupportSystem() { reader = new InputReader(); responder = new Responder(); } /** * Start the technical support system. This will print a * welcome message and enter into a dialog with the user, * until the user ends the dialo...