Kamis, 20 Oktober 2016

Java Programming : Ticket Machine Program



                Assalamu’alaikum.
                Pembahasan program kali ini sedikit berbeda dari sebelumnya, karena program ini ditujukan sebagai pengumpulan tugas untuk mata kuliah Pemrograman Berorientasi Objek. Jadi disini langsung saja saya bagi source code nya. Dan untuk penjelasan programnya akan saya jelaskan lebih detail nanti.

import java.util.Scanner;

public class TicketMachine
{
   private int price;
   private int balance;
   private int total;
   private int refund;
   private int tickets;
  
   public TicketMachine(int TicketCost){
       price = TicketCost;
       balance = 0;
       total = 0;
       refund = 0;
       tickets = 0;
   }
  
   public int getPrice(){
       return price;
   }
  
   public void insertMoney(int amount){
       if(amount > 0){
           balance += amount;
       }
       else{
           System.out.println("Tolong masukkan uang untuk dibayar");
       }
   }
  
   public void printTicket(){
       if(balance > 0){
           if(balance >= price){
               tickets = purchaseTickets();
              
               int i = 1;
              
               while(i <= tickets){
                   System.out.println("------------------");
                   System.out.println("-Tiket Kereta Api-");
                   System.out.println("Ticket " + i);
                   System.out.println("Price " + price + " rupiah");
                   System.out.println("------------------");
                  
                   i++;
               }
              
               total += balance;
              
               refund = refundBalance();
              
               if(refund == 0){
                   System.out.println("Tidak ada perubahan");
               }
               else{
                   System.out.println("Jumlah uang kembalian adalah " + refund + " rupiah");
               }
              
               balance = 0;
           }
           else{
               System.out.println("Uang yang dimasukkan kurang");
               System.out.println("Masukkan uang sebanyak " + (price - balance) + " rupiah");
           }
       }
       else{
           System.out.println("Tolong masukkan jumlah uang yang bernilai positif");
       }
   }
  
   public int refundBalance(){
       int TakeFund;
      
       TakeFund = balance - price * tickets;
      
       balance = 0;
      
       return TakeFund;
   }
  
   public int purchaseTickets(){
       int numberOfTickets;
      
       numberOfTickets = balance / price;
      
       return numberOfTickets;
   }
}

                Dari source code diatas, hal yang tidak umum dilihat adalah tidak adanya fungsi main yang menjadi fungsi utama dalam pengeksekusian program Java sederhana. Dengan kata lain, program diatas dieksekusi dalam bentuk pengeksekusian fungsi secara sendiri-sendiri. Dengan contoh output sebagai berikut.

 
 
 
 
Lalu klik kanan pada objek merah bertuliskan TicketMa2: TicketMachine, lalu klik void printTicket(), maka akan muncul hasil dari pembelian tiket yang sudah dilakukan.

Jika ada yang kurang jelas dari program saya, silahkan tanyakan di kolom komentar. Terima kasih. Wassalamu'alaikum. :D

Tidak ada komentar:

Posting Komentar