Langsung ke konten utama

Program Pustaka ADT - Pemrograman Bahasa Java

Program Antrian Pembelian Tiket Pesawat.

Tugas :

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 tampilan diweblog masing masing. Kemudian tuliskan tanggapan di diskusi ini berisi URL-nya, dilengkapi dengan NPM, dan Nama Mahasiswa.

Source Code.

package Pustaka.ADT;

import java.util.Queue;

import java.util.LinkedList;

import java.util.*;

public class appAntrian {

    public static void main(String[] args) {

        Scanner sc = new Scanner (System.in);

        Queue q = new LinkedList();

        int bagasi;

        int biaya_tiket = 650000;

        int biaya_bagasi = 5000;

        String nama_penumpang, nomor_antrian, bandara_asal, bandara_tujuan;

        String [][] kursi= new String [10][4];

        int pilih=0;

        do{

            System.out.println("\nMENU ANTRIAN PEMBELIAN TIKET PESAWAT");

            System.out.println("1. Ambil nomor antrian");

            System.out.println("2. Panggil antrian");

            System.out.println("3. Tampilkan ketersediaan kursi");

            System.out.println("4. Tampilkan daftar antrian");

            System.out.println("5. Keluar");

            System.out.print("Pilih = ");

            pilih=sc.nextInt();

            switch(pilih){

                case 1:

                    System.out.print("Masukkan Nomor Antrian = ");

                    nomor_antrian = sc.next();

                    q.add(nomor_antrian);

                    System.out.println("Terima Kasih, Silahkan Menunggu...");

                    break;

                case 2:

                    if(q.size()>0){

                        System.out.println("Silahkan antrian selanjutnya...");

                        q.poll();

                        System.out.print("Masukkan Nama Anda             = ");

                        nama_penumpang = sc.next();

                        System.out.print("Masukkan Bandara Keberangkatan = ");

                        bandara_asal = sc.next();

                        System.out.print("Masukkan Bandara Tujuan        = ");

                        bandara_tujuan = sc.next();

                        System.out.print("Masukkan Berat Bagasi          = ");

                        bagasi = sc.nextInt();

                        System.out.print("Masukkan Nomor Baris Kursi     = ");

                        int baris = sc.nextInt();

                        System.out.print("Masukkan Nomor Kolom Kursi     = ");

                        int kolom = sc.nextInt();

                        int total_bagasi = bagasi*biaya_bagasi;

                        int total = biaya_tiket + total_bagasi;

                        System.out.println("========Pembayaran Anda======== ");

                        System.out.println("Biaya Tiket             = Rp "

                                +biaya_tiket);

                        System.out.println("Biaya Bagasi            = Rp "

                                +total_bagasi);

                        System.out.println("Tagihan Pembayaran Anda = Rp "+total);

                        kursi[baris][kolom]=nama_penumpang;

                        System.out.println("Silahkan Membayar Sesuai Tagihan..");

                    }else{

                        System.out.println("Antrian Kosong...");

                    }

                    break;

                case 3:

                    System.out.println("Kursi yang tersedia");

                    System.out.println("------------------------");

                    for(int i=0; i<10;i++){

                        for(int j=0;j<4;j++){

                            System.out.format("|%s|\t",kursi[i][j]);

                        }

                        System.out.println("");

                    }

                    break;

                case 4:

                    if(q.size()>0){

                        System.out.println("Antrian Saat Ini = "+q);

                    }else{

                        System.out.println("Antrian kosong...");

                    }

                    break;

                case 5:

                    System.out.println("~~Terima Kasih, Selamat Menikmati "

                            + "Perjalanan Anda~~");

                    break;

            }

        }while(pilih!=5);

    }

}

Screenshot Running Program :

run:

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 1

Masukkan Nomor Antrian = A01

Terima Kasih, Silahkan Menunggu...

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 1

Masukkan Nomor Antrian = A02

Terima Kasih, Silahkan Menunggu...

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 1

Masukkan Nomor Antrian = A03

Terima Kasih, Silahkan Menunggu...

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 4

Antrian Saat Ini = [A01, A02, A03]

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 2

Silahkan antrian selanjutnya...

Masukkan Nama Anda             = Roro

Masukkan Bandara Keberangkatan = Djuanda

Masukkan Bandara Tujuan        = Seoul

Masukkan Berat Bagasi          = 6

Masukkan Nomor Baris Kursi     = 0

Masukkan Nomor Kolom Kursi     = 0

========Pembayaran Anda========

Biaya Tiket             = Rp 650000

Biaya Bagasi            = Rp 30000

Tagihan Pembayaran Anda = Rp 680000

Silahkan Membayar Sesuai Tagihan..

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 2

Silahkan antrian selanjutnya...

Masukkan Nama Anda             = Nadsu

Masukkan Bandara Keberangkatan = Soekarno

Masukkan Bandara Tujuan        = Singapore

Masukkan Berat Bagasi          = 3

Masukkan Nomor Baris Kursi     = 0

Masukkan Nomor Kolom Kursi     = 1

========Pembayaran Anda========

Biaya Tiket             = Rp 650000

Biaya Bagasi            = Rp 15000

Tagihan Pembayaran Anda = Rp 665000

Silahkan Membayar Sesuai Tagihan..

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 4

Antrian Saat Ini = [A03]

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 3

Kursi yang tersedia

------------------------

|Roro|   |Nadsu|            |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

|null|     |null|     |null|     |null|    

 

MENU ANTRIAN PEMBELIAN TIKET PESAWAT

1. Ambil nomor antrian

2. Panggil antrian

3. Tampilkan ketersediaan kursi

4. Tampilkan daftar antrian

5. Keluar

Pilih = 5

~~Terima Kasih, Selamat Menikmati Perjalanan Anda~~

BUILD SUCCESSFUL (total time: 2 minutes 41 seconds)


NB : Berikut saya lampirkan screenshot running program dalam bentuk drive, karena dalam blogger saya terdapat kendala:

https://drive.google.com/drive/folders/1vo4y9bcfWdd5iVgBqIR7CaRO5QfPZM3E?usp=sharing

Disusun : Roro Ayu Pangestuti (20082010128)

Komentar

Postingan populer dari blog ini

Program Linked List Lanjut (Double Linked List) - Pemrograman Bahasa Java

Tugas 1 : Buatlah program sederhana untuk mengelola data barang yang terdiri dari Kode, Nama, dan Harga dengan menggunakan double linked list. Menu program setidaknya untuk menambah simpul baru, menghapus simpul, menampilkan linked lis (maju dan mundur), serta mencari data Nama di dalam linked list.   Class Simpul package LinkedListLanjut; public class cSimpulDouble {     private String kode;     private String nama;     private String harga;     cSimpulDouble next;     cSimpulDouble prev;     cSimpulDouble(String kd,String nm, String hg){         kode=kd; nama=nm; harga=hg; next=null; prev=null;         System.out.println("Object "+kd+" Dibuat...");         System.out.println("Object "+nm+" Dibuat...");         System.o...