pemrograman 9.1 (Pencarian Data)
Modifikasilah program yang dibahas di kelas dengan menambahkan fitur/menu untuk mencari menu makanan berdasarkan range harga yang dimasukkan oleh user; yaitu harga bawah dan harga atas. Kemudian nama-nama menu makanan yang harganya memenuhi range tersebut ditampilkan di layar output untuk selanjutnya dipilih sebagai item pembelian dan masuk ke dalam daftar belanja pembeli. Daftar menu makanan hasil pencarian sebaiknya diberi angka untuk memudahkan pemilihan.
Tips: Buat tiga array baru untuk menampung hasil pencarian. Satu array untuk nama makanan. Satu array untuk harganya. Dan satu array lagi untuk menyimpan transaksi pembeliannya.
Source Code:
package searchdata;
import java.util.Scanner;
public class LatSearchData {
public static void main(String[] args) {
Scanner N = new Scanner(System.in);
int harga[] = new int [6];
String menu[] = new String [6];
String belanja[] = new String [6];
int harbel[] = new int [6];
int pilih = 0; int jumlah = 0;
//menu dan harga
menu[0] = "Nasi Bakar"; harga[0] = 10000;
menu[1] = "Nasi Campur"; harga[1] = 8000;
menu[2] = "Nasi Goreng"; harga[2] = 15000;
menu[3] = "Bubur Ayam"; harga[3] = 11000;
menu[4] = "Bakso Sapi"; harga[4] = 9000;
menu[5] = "Mie Ayam"; harga[5] = 12000;
do{
System.out.println("-----------------------------");
System.out.println("SELAMAT DATANG DI WARUNG KU");
System.out.println("-----------------------------");
System.out.println("1. Daftar Menu Makanan");
System.out.println("2. Filter Harga");
System.out.println("3. Selesai");
System.out.println("-----------------------------");
System.out.print("Pilih y = ");
pilih = N.nextInt();
System.out.println("");
switch(pilih){
case 1:
//Mengurutkan berdasarkan nama
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 5; j++) {
if (menu[j].compareToIgnoreCase(menu[j+1])>0) {
String t = menu[j];
menu[j] = menu[j+1];
menu[j+1] = t;
int h = harga[j];
harga[j] = harga[j+1];
harga[j+1] = h;
}
}
}
System.out.println("-----------------------------");
System.out.println("\tWARUNG KU");
System.out.println("-----------------------------");
System.out.println("Menu\t\t| Harga");
System.out.println("-----------------------------");
for (int i = 0; i < 6; i++) {
System.out.println((i + 1) + ". " + menu[i] + " \t| Rp." + harga[i]);
}
System.out.println();
break;
case 2:
//Filter Harga
System.out.print("Masukkan Harga Minimal \t= ");
int min = N.nextInt();
System.out.print("Masukkan Harga Maksimal = ");
int max = N.nextInt();
System.out.println("-----------------------------");
System.out.println("\tWARUNG KU");
System.out.println("-----------------------------");
System.out.println("Menu\t\t| Harga");
System.out.println("-----------------------------");
String menu_cari[] = new String[10];
int harga_cari[] = new int[10];
int idx = 0;
for (int i = 0; i < menu.length; i++) {
if (harga[i] >= min && harga[i] <= max) {
menu_cari[idx] = menu[i];
harga_cari[idx] = harga[i];
idx++;
System.out.println(idx + ". " + menu[i] + " \t| Rp. " + harga[i]);
}
}
// Transaksi
System.out.print("Silahkan Pilih Menu \t= ");
int pilih2 = N.nextInt();
belanja[jumlah] = menu_cari[pilih2-1];
harbel[jumlah] = harga_cari[pilih2-1];
jumlah++;
System.out.println("");
break;
case 3:
System.out.println("-----------------------------");
System.out.println("\tTERIMA KASIH");
System.out.println("-----------------------------");
break;
default:
System.out.println("-----------------------------");
System.out.println("\tINPUT TIDAK SESUAI!");
System.out.println("-----------------------------");
break;
}
} while (pilih != 3);
//Mencetak Struk
System.out.println("-------------------------------------------");
System.out.println("\tDAFTAR BELANJA ANDA DI WARUNG KU");
System.out.println("-------------------------------------------");
System.out.println(" Menu | Harga ");
System.out.println("-------------------------------------------");
for (int i = 0; i < jumlah; i++) {
System.out.println((i + 1) + ". " + belanja[i] + " \t| Rp. " + harbel[i]);
}
System.out.println();
}
}
Komentar
Posting Komentar