Bahasa Pemrograman 1 - Array Multidimensi
Lina Wardani - 21082010116
Soal :
Modifikasilah source code yang dibahas di kelas, sehingga mampu mencatat transaksi untuk pembeli/pengunjung yang berbeda, tanpa harus menjalankan ulang programnya. Posting di forum ini seperti biasanya.
Tips: tambahkan loop baru di bagian paling luar. Setiap kali selesai transaksi pembeli, variabel-variabel array dan indeksnya di-reset menjadi nol/kosong. Kemudian baru diisi kembali melalui menu pembelian makanan/minuman.
source code :
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int mulai = 0;
String pesanan[][] = new String[5][3];
int nominal[][] = new int[5][6];
int idx=0, idxmkn=0, idxmnm=0;
int pilih1=0, pilih2=0, jumlah=0, total = 0;
do{
System.out.println("---Warung 85---");
System.out.println("Apakah anda ingin membuat pesanan?");
System.out.println("1. Ya");
System.out.println("2. Tidak");
System.out.print("Pilih =");
mulai= s.nextInt();
if(mulai==1){
do{
System.out.println("---Menu---");
System.out.println("1. Makanan");
System.out.println("2. Minuman");
System.out.println("3. Selesai");
System.out.print("Pilih=");
pilih1= s.nextInt();
switch(pilih1){
case 1:
System.out.println("---Daftar Makanan---");
System.out.println("1. Sate");
System.out.println("2. Soto");
System.out.println("3. Bakso");
System.out.print("Pilih=");
pilih2= s.nextInt();
switch(pilih2){
case 1 :
pesanan [idxmkn][0]= "Sate";
nominal [idxmkn][0]= 12000;
break;
case 2 :
pesanan [idxmkn][0]="Soto";
nominal[idxmkn][0]=10000;
break;
case 3 :
pesanan [idxmkn][0]="Bakso";
nominal [idxmkn][0]=8000;
break;
}
System.out.print("Jumlah =");
jumlah = s.nextInt();
nominal[idxmkn][2] = jumlah;
//menghitung biaya
nominal[idxmkn][4]=nominal[idxmkn][0]*nominal[idxmkn][2];
idxmkn++;
break;
case 2 :
System.out.println("---Daftar Minuman---");
System.out.println("1. Teh");
System.out.println("2. Es Degan");
System.out.println("3. Air Mineral");
System.out.print("Pilih =");
pilih2= s.nextInt();
switch(pilih2){
case 1 :
pesanan[idxmnm][1] = "Teh";
nominal[idxmnm][1] = 2000;
break;
case 2 :
pesanan[idxmnm][1] = "Es Degan";
nominal[idxmnm][1] = 3000;
break;
case 3 :
pesanan[idxmnm][1]= "Air Mineral";
nominal[idxmnm][1]= 3000;
break;
}
System.out.print("Jumlah");
jumlah = s.nextInt();
nominal[idxmnm][3] = jumlah;
//menghitung biaya
nominal[idxmnm][5]=nominal[idxmnm][1]*nominal[idxmnm][3];
idxmnm++;
break;
case 3 :
System.out.println("Pesanan Selesai\n");
}
}while(pilih1 != 3 && idxmkn != 5 && idxmnm != 5);
System.out.println("---Daftar Pembelian---");
System.out.println("Makanan\t\tHarga\tPcs\tTotal Biaya");
for (int i = 0; i < 5; i++) {
if (pesanan[i][0] != null) {
System.out.print((i + 1) + ". " + pesanan[i][0]);
System.out.print("\t" + nominal[i][0]);
System.out.print("\t" + nominal[i][2]);
System.out.print("\t" + nominal[i][4]);
total = total + nominal[i][4];
System.out.println("");
}
}
System.out.println("----------------------------------");
System.out.println("Minuman\t\tHarga\tPcs\tTotal Biaya");
for (int i = 0; i < 5; i++) {
if (pesanan[i][1] != null) {
System.out.print((i + 1) + ". " + pesanan[i][1]);
System.out.print("\t" + nominal[i][1]);
System.out.print("\t" + nominal[i][3]);
System.out.print("\t" + nominal[i][5]);
total = total + nominal[i][5];
System.out.println("");
}
}
System.out.println("-------------------------------------");
System.out.println("Total ="+total);
System.out.println("-------------------------------------");
System.out.println("");
}
}while(mulai!=2);
System.out.println("Terima Kasih dan Selamat Menikmati ");
}
}
Comments
Post a Comment