PROGRAM KASIR LOOPING

Pada kesempatan kali ini kita akan membahas tentang program kasir yang telah dimodifikasi dari program kasir switch case. Kali ini pembeli dapat memesan pesanan yang lebih dari 1 dan mengakumulasikannya di akhir untuk di rekap dan keluar harga akhir. Berikut source code nya:


package perulangan;

import java.util.Scanner;

public class perulangan {

    public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    int pesan, menu_utama, pesanan_anda, kartu, total=0, total1=0, total2=0, 

        total3=0, total4=0, total5=0, total6=0, total7=0, jumlah1=0, 

        jumlah2=0 ,jumlah3=0 ,jumlah4=0 , jumlah5=0 , jumlah6=0 ,jumlah7=0 ;

    double diskon = 0, tunai, kembalian, setelahdiskon;

        System.out.println("--------PROGRAM KASIR PUJASERA--------");

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

        

        do {

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

            System.out.println("Pilih Menu Makanan Yang Tersedia = \n" + 

                    "1. Sate \n" +

                    "2. Pecel \n" +

                    "3. Penyetan \n" +

                    "4. selesai memilih menu \n");

             System.out.print("MASUKAN PILIHAN ANDA = ");

            menu_utama = sc.nextInt();

            switch (menu_utama){

                case 1 :

                    System.out.println("Menu sate : \n" +

                            "1. Sate Ayam    = Rp 1500/tusuk \n" +

                            "2. Sate Kambing = Rp 3000/tusuk \n" );

                    System.out.print("MASUKAN PESANAN ANDA = ");

                    pesan = sc.nextInt();

                    if (pesan == 1){

                    System.out.print("Masukkan Jumlah sate ayam yang ingin dipesan = ");

                    jumlah1 = sc.nextInt();

                    total1 = jumlah1 * 1500;

                    System.out.println("==kembali ke manu utama== \n");

                    }

                    else if (pesan == 2){

                    System.out.print("Masukkan Jumlah sate kambing yang ingin dipesan = ");

                    jumlah2 = sc.nextInt();

                    total2 = jumlah2 * 3000;

                    System.out.println("==kembali ke manu utama== \n");

                    }

                    else if (pesan != 1 && pesan != 2){

                    System.out.println("==Pilihan Salah==\n");    

                    }

                    break;

                case 2 : 

                    System.out.println("Menu pecel : \n" +

                            "1. Pecel Ayam  = Rp 13000/porsi \n" +

                            "2. Pecel empal = Rp 15000/porsi \n");

                    System.out.print("MASUKAN PESANAN ANDA = ");

                    pesan = sc.nextInt();

                    if (pesan == 1){

                    System.out.print("Masukkan Jumlah pecel ayam yang ingin dipesan = ");

                    jumlah3 = sc.nextInt();

                    total3 = jumlah3 * 13000;

                    System.out.println("==kembali ke manu utama== \n");

                    }

                    else if (pesan == 2){

                    System.out.print("Masukkan Jumlah pecel empal yang ingin dipesan = ");

                    jumlah4 = sc.nextInt();

                    total4 = jumlah4 * 15000;

                    System.out.println("==kembali ke manu utama== \n");

                    }

                    else if (pesan != 1 && pesan != 2){

                    System.out.println("==Pilihan Salah==\n");    

                    }

                    break;

                case 3 :

                    System.out.println("Menu penyetan : \n" +

                            "1. Lauk tahu/tempe = Rp 5000/porsi \n" +

                            "2. Lauk telur      = Rp 7000/porsi \n" +

                            "3. Lauk ayam       = Rp 10000/porsi");

                    System.out.print("MASUKAN PESANAN ANDA = ");

                    pesan = sc.nextInt();

                    switch (pesan){

                        case 1 : 

                            System.out.print("Masukkan Jumlah penyet tahu/tempe yang ingin dipesan = ");

                            jumlah5 = sc.nextInt();

                            total5 = jumlah5 * 5000;

                            System.out.println("==kembali ke manu utama== \n");

                            break;

                        case 2 :

                            System.out.print("Masukkan Jumlah penyet telur yang ingin dipesan = ");

                            jumlah6 = sc.nextInt();

                            total6 = jumlah6 * 5000;

                            System.out.println("==kembali ke manu utama== \n");

                            break;

                        case 3 :

                            System.out.print("Masukkan Jumlah penyet ayam yang ingin dipesan = ");

                            jumlah7 = sc.nextInt();

                            total7 = jumlah7 * 5000;

                            System.out.println("==kembali ke manu utama== \n");

                            break;

                        default :

                            System.out.println("==Pilihan Salah==\n");

                            break;

                        }

                    break;

                case 4 :

                    System.out.println("==Pemilihan Menu selesai== \n");

                    break;

                default :

                    System.out.println("==Menu tidak ada==");

                    break;  

            }

        }

        while (menu_utama != 4);

        total = total1 + total2 + total3 + total4 + total5 + total6 + total7;

        

        System.out.println("Ada kartu member?" );

        System.out.println("1. Ada");

        System.out.println("2. Tidak");

        System.out.print("MASUKAN JAWABAN = ");

        kartu = sc.nextInt();

        System.out.println(" ");

        if (kartu == 1){

                diskon = total * 0.05;

        }

        else if (kartu == 2){

                diskon = total * 0;

        }

        else if (kartu != 1 && kartu != 2){

                System.out.println("Pilihan Salah\n");    

        }

        setelahdiskon = total - diskon;

        

            System.out.println("REVIEW PESANAN:");

        if (total1 > 0){

            System.out.println("Sate ayam         = " + jumlah1 + " Porsi x Rp. 1500  = Rp. " + total1);

        }

        if (total2 > 0){

            System.out.println("Sate kambing      = " + jumlah2 + " Porsi x Rp. 3000  = Rp. " + total2);

        }

        if (total3 > 0){

            System.out.println("Pecel ayam        = " + jumlah3 + " Porsi x Rp. 13000 = Rp. " + total3);

        }

        if (total4 > 0){

            System.out.println("pecel empal       = " + jumlah4 + " Porsi x Rp. 15000 = Rp. " + total4);

        }

        if (total5 > 0){

            System.out.println("penyet tahu/tempe = " + jumlah5 + " Porsi x Rp. 5000  = Rp. " + total5);

        }

        if (total6 > 0){

            System.out.println("penyet telur      = " + jumlah6 + " Porsi x Rp. 7000  = Rp. " + total6);

        }

        if (total7 > 0){

            System.out.println("penyet ayam       = " + jumlah7 + " Porsi x Rp. 10000 = Rp. " + total7);

        }

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

        System.out.println("Total harga       = Rp. " + total);

        System.out.println("Diskon            = Rp. " + diskon);

        System.out.println("Setelah Diskon    = Rp. " + setelahdiskon);

        System.out.println(" "); 

         System.out.print("Masukan Uang Pembeli = Rp. ");

        tunai = sc.nextDouble();

        if (tunai == setelahdiskon) {

            System.out.println("==Uang Anda Pas==");

        }

        else if (tunai > setelahdiskon) {

            kembalian = tunai - setelahdiskon;

            System.out.println("==Uang Kembalian = Rp. " + kembalian + "==");

        }

        System.out.println("===Terimakasih Telah Berbelanja===");

    }

}


Tampilan menu utama beserta pemilihan menu sate ayam berjumlah 5 tusuk:


Setalah kembali ke menu utama, di contohkan untuk memilih sate kambing berjumlah 5 tusuk:



Contoh pemilihan menu penyetan tahu/tempe dengan jumlah 4 porsi:



    Kemudian contoh dibawah adalah tampilan setelah selesai memilih menu, maka dilakukan pemilihan option "selesai memilih menu", lalu  program akan menanyakan apakah terdapat kartu member, setelah menjawab maka dilakukan review/penjabaran pesanan per pesanan, lalu dijumlah keseluruhan dan dikurang sejumlah diskon jika ada. Terakhir diminta masukan uang yang dibayar pembeli, dan dikurang untuk mendapatkan uang kembali. Program selesai.









Comments

Popular posts from this blog

PROGRAM KASIR IF ELSE