Pages

Friday 21 October 2016

PBO D - Program Display Jam

PBO-5-Interaksi Objek


Naufal Pranasetyo
5115100057
Kelas PBO D


Dalam membuat program perangkat lunak yang perlu dilakukan pertama kali adalah membuat abstraksi. Abstraksi dilakukan dengan membagi problem menjadi sub problem-sub problem dalam rangka membangun class-class yang digunakan untuk konstruksi program.

Untuk memahami interaksi antar objek kita akan membuat contoh program display jam. Saya diberikan tugas membuat sebuah jam digital terdiri dari jam dan menit. Format jam nilai maksimal 23 dan nilai maksimal menit 59. Setelah membuat abstraksi selanjutnya mendekomposisi kelas dalam bentuk implementasi program


Saya membuatnya dengan membuat 3 objek class, berikut saya tampilkan source code serta hasil output implementasi dari code tersebut
Source code:

1. Number Display
 Pada class ini berisi fungsi untuk set limit jam yaitu bernilai maks 24 serta syarat-syarat yang dibutuhkan oleh jam.


2. Clock Display
 Fungsi ini adalah dasar dari clock yang nantinya akan mengatur segala fungsi yang ada di Number Display.


3. Tes Clock Display


Hubungan ketiga class tersebut seperti ini:


Dan Hasil dari program tersebut ialah:

Saya melakukan test untuk jam 
23:58
25:31
12:12











Friday 7 October 2016

PBO - Studi Kasus Ticket Machine

Ticket Machine adalah sebuah mesin seperti ATM, yang berfungsi melayani penjualan tiket kereta api dari satu tujuan ke tujuan yang lain. Di dalam Ticket Machine ada sebuah program atau perangkat lunak yang mengatur harga tiket di tiap tujuan, mengatur kembalian uang, dan juga mencetak receipt sebagai bukti pembelian tiket.

Saya diberi tugas untuk membuat suatu vending ticket machine menggunakan java, disini saya menggunakan BlueJ. Berikut source codenya:

public class Naufal_TicketMachine
{
    private int price;
    private int balance;
    private int total;
    public Naufal_TicketMachine(int cost)
    {
        price = cost;
        balance = 0;
        total = 0;
    }
    /**
     * @Return The price of a ticket.
     */
    public int getPrice()
    {
        return price;
    }
    public int getBalance()
    {
        return balance;
    }
    public void insertMoney(int amount)
    {
        if(amount > 0) {
            balance = balance + amount;
        }
        else {
            System.out.println("Use a positive amount rather than: " +
                               amount);
        }
    }
    public void printTicket()
    {
        if(balance >= price) {
            // Simulate the printing of a ticket.
            System.out.println("##################");
            System.out.println("# The BlueJ Line");
            System.out.println("# Ticket");
            System.out.println("# " + price + " cents.");
            System.out.println("##################");
            System.out.println();

            // Update the total collected with the price.
            total = total + price;
            // Reduce the balance by the prince.
            balance = balance - price;
        }
        else {
            System.out.println("You must insert at least: " +
                               (price - balance) + " more cents.");
                    
        }
    }

    public int refundBalance()
    {
        int amountToRefund;
        amountToRefund = balance;
        balance = 0;
        return amountToRefund;
    }

}





Berikut hasil implementasi dari source code tersebut :




Problem 3 - For

Untuk program perulangan menggunakan for, berikut code beserta hasil compilenya:


Problem 1 - Hello World

Sekarang saya ingin memulai untuk satu persatu membuat postingan untuk solusi dari problem kodingan Java yang akan saya buat. Di list yang terdahulu saya ingin mencoba membuat 100 program Java, saat ini saya akan membuat 3 terlebih dahulu. Program yang ingin saya buat saat ini ialah

1. Hello World!

public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }