Minggu, 20 Juni 2021

Pemrograman OOP Java : Queue - ADT 1

 

 

 

 

 

 

Dasar Program Java Berorientasi Objek

Queue - ADT 1 : Plane Ticketing Program


The Objective

Buatlah program menggunakan pustaka ADT untuk melayani antrian pembelian tiket pesawat terbang di bandara. Menu program sekurang-kurangnya terdiri dari: ambil nomor antrian, panggil antrian, dan tampilkan daftar antrian. Di dalam menu panggil antrian, user memasukkan setidaknya data bandara asal, bandara tujuan, dan berat bagasi. Kemudian sistem akan menampilkan jumlah biaya total yang harus dibayar; standar biaya tiket dan bagasi silahkan diasumsikan sendiri. Fitur lain yang bisa ditambahkan adalah mengatur posisi kursi yang sudah terisi dan yang masih kosong sehingga penumpang bisa memilih seat-nya (perlu array 2 dimensi untuk menyimpan data kursi penumpang).

Posting program dan tampilannya di weblog masing-masing. Kemudian tuliskan tanggapan di diskusi ini berisi URL-nya, dilengkapi dengan NPM, dan Nama mahasiswa.


Source Code

  • appBarisan (Main)

package ADT;

import java.util.Scanner;
import java.util.Queue;
import java.util.LinkedList;

public class appPlaneTicketing {
    public static void main(String[] args) {
        int bagasipesawat;
        int hargatiket=558000;
        int hargajasabg=21000;
        String noantri, namapenumpang, maskapai, asalbandara, bandaratujuan;
        Queue ques = new LinkedList();
        Scanner input = new Scanner(System.in);
        int opsi=0;
        do {
            System.out.println("\nAPLIKASI PLANE TICKETING");
            System.out.println("1. Ambil nomor antrian");
            System.out.println("2. Panggil antrian");
            System.out.println("3. Daftar antrian");
            System.out.println("4. Keluar");
            System.out.print("Pilih = ");
            opsi=input.nextInt();
            switch(opsi) {
            case 1:
                System.out.print("Input Nomor Antrian : ");
                noantri = input.next();
                ques.add(noantri);
                break;
            case 2:
                if(ques.size()>0) {
                    System.out.println("PANGGILAN UNTUK NOMOR ANTRIAN SELANJUTNYA");
                    ques.poll();
                    System.out.print("Nama Penumpang : ");
                    namapenumpang = input.next();
                    System.out.print("Maskapai : ");
                    input = new Scanner(System.in);
                    maskapai = input.nextLine();
                    System.out.print("Input Asal Bandara :");
                    input = new Scanner(System.in);
                    asalbandara=input.nextLine();
                    System.out.print("Input Bandara yang Dituju :");
                    input = new Scanner(System.in);
                    bandaratujuan=input.nextLine();
                    System.out.print("Input Beban Bagasi Pengguna : ");
                    input = new Scanner(System.in);
                    bagasipesawat=input.nextInt();
                    int totalbg=bagasipesawat*hargajasabg;
                    int totalfee=totalbg+hargatiket;
                    System.out.println("Bandara Asal : "+ asalbandara);
                    System.out.println("Bandara Tujuan : "+ bandaratujuan);
                    System.out.println("Harga Jasa Bagasi : "+totalbg);
                    System.out.println("Total Charge : "+totalfee);
                }
                else {
                    System.out.println("Antrian Saat Ini Tidak Berisi");
                }
                break;
            case 3:
                if(ques.size()>0) {
                    System.out.println("Daftar Antrian Pengguna Maskapai");
                    System.out.println(ques);
                }
                else {
                    System.out.println("Antrian Saat Ini Tidak Berisi");
                }
                break;
            case 4:
                System.out.println("Terimakasih, Selamat Menikmati Perjalanan");
                break;
            }
        }while(opsi!=4);

    }
}

The Visual Output             

  •  INPUT 2 NOMOR ANTRIAN PENUMPANG
 

  • PEMANGGILAN NOMOR ANTRIAN 1


  •  PEMANGGILAN NOMOR ANTRIAN 2 
 

Catatan :

  • Bila gambar yang ditampilkan kurang jelas, mohon klik gambar tersebut.

Terimakasih telah berkunjung, have a nice day :))














Tidak ada komentar:

Posting Komentar