Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- import java.util.List;
- import java.util.ArrayList;
- import java.time.LocalDate;
- public class TiketPesawat
- {
- private enum Bandara {
- AhmadYani, Djuanda, SoekarnoHatta
- };
- private List<String> nomorHp = new ArrayList<String>();
- private List<String> nomorIdentitas = new ArrayList<String>();
- private Bandara bandaraDari, bandaraKe;
- private int jumlahPenumpang;
- private int harga;
- private LocalDate tanggalKeberangkatan;
- Scanner scan = new Scanner(System.in);
- public void beliTiketPesawat()
- {
- System.out.println("Masukkan Jumlah Penumpang: ");
- jumlahPenumpang = scan.nextInt();
- for(int i = 0; i < jumlahPenumpang; i++)
- {
- System.out.println("Masukkan Nomor Identitas Penumpang " + (i+1) + ": ");
- nomorIdentitas.add(scan.next());
- System.out.println("Masukkan Nomor HP Penumpang " + (i+1) + ": ");
- nomorHp.add(scan.next());
- }
- System.out.println("Masukkan Tanggal Keberangkatan (yyyy-mm-dd): ");
- tanggalKeberangkatan = LocalDate.parse(scan.next());
- System.out.println("");
- System.out.println("Pilih Bandara Keberangkatan");
- System.out.println("1. Ahmad Yani");
- System.out.println("2. Djuanda");
- System.out.println("3. Soekarno-Hatta");
- bandaraDari = kodeToBandara(scan.nextInt());
- System.out.println("");
- System.out.println("Pilih Bandara Tujuan");
- System.out.println("1. Ahmad Yani");
- System.out.println("2. Djuanda");
- System.out.println("3. Soekarno-Hatta");
- bandaraKe = kodeToBandara(scan.nextInt());
- System.out.println("");
- if (bandaraDari == bandaraKe) {
- System.out.println("Bandara tidak boleh sama!");
- return;
- }
- hitungHarga();
- printNota();
- }
- public void hitungHarga()
- {
- if((bandaraDari == Bandara.AhmadYani && bandaraKe == Bandara.Djuanda) || (bandaraDari == Bandara.Djuanda && bandaraKe == Bandara.AhmadYani))
- harga = 300000;
- else if((bandaraDari == Bandara.AhmadYani && bandaraKe == Bandara.SoekarnoHatta) || (bandaraDari == Bandara.SoekarnoHatta && bandaraKe == Bandara.AhmadYani))
- harga = 400000;
- else if((bandaraDari == Bandara.Djuanda && bandaraKe == Bandara.SoekarnoHatta) || (bandaraDari == Bandara.SoekarnoHatta && bandaraKe == Bandara.Djuanda))
- harga = 500000;
- harga = harga * jumlahPenumpang;
- }
- public void printNota()
- {
- System.out.println("######################################");
- System.out.println("# I-Kios");
- System.out.println("# TiketPesawat");
- for(int i = 0; i < jumlahPenumpang; i++)
- {
- System.out.println("# Nomor Identitas Penumpang " + (i+1) + ": " + nomorIdentitas.get(i));
- System.out.println("# Nomor HP Penumpang "+ (i+1) + ": " + nomorHp.get(i));
- }
- System.out.println("# Tanggal Keberangkatan: " + tanggalKeberangkatan);
- System.out.println("# Bandara Dari: " + bandaraToString(bandaraDari));
- System.out.println("# Bandara Ke: " + bandaraToString(bandaraKe));
- System.out.println("# Harga: " + harga);
- System.out.println("######################################");
- }
- private Bandara kodeToBandara(int kode) {
- switch (kode) {
- case 1:
- return Bandara.AhmadYani;
- case 2:
- return Bandara.Djuanda;
- case 3:
- return Bandara.SoekarnoHatta;
- default:
- return null;
- }
- }
- private String bandaraToString(Bandara bandara) {
- switch (bandara) {
- case AhmadYani:
- return "Ahmad Yani";
- case Djuanda:
- return "Djuanda";
- case SoekarnoHatta:
- return "Soekarno-Hatta";
- default:
- return null;
- }
- }
- }
Add Comment
Please, Sign In to add comment