Bahasa Pemrograman 2 - Class Container

Nama  : Lina Wardani 

NPM   : 21082010116

Kelas   : Par C


Main Class

package pkgClassContainer;

//Budi membeli sate dan soto

//class : pembeli, makanan, transaksi(nota/kwitansi)

import java.util.Scanner;

public class appWarung {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int pilih=0;

        cPembeli pbl = new cPembeli();

        cMakanan menu[]=new cMakanan[5];

        menu[0]=new cMakanan("Sate",15000);

        menu[1]=new cMakanan("Gule",20000);

        menu[2]=new cMakanan("Soto",12000);

        menu[3]=new cMakanan("Bakso",10000);

        menu[4]=new cMakanan("Pecel",8000);

        

        do{

            System.out.println("\n---APP WARUNG---");

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

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

            System.out.println("3.Transaksi");

            System.out.println("4.Selesai");

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

            pilih=sc.nextInt();

            switch(pilih){

                case 1:

                    System.out.print("Nama pembeli = ");

                    String nm = sc.next();

                    pbl.setNama(nm);

                    System.out.println("Isi pembeli sukses..");

                    break;

                case 2:

                    System.out.println("");

                    System.out.println("Daftar Menu");

                    for (int i = 0; i < menu.length; i++) {

                        System.out.println((i+1)+"."+menu[i].ToString());

                    }

                    break;

                case 3:

                           cTransaksi beli = new cTransaksi();

                    int pilih2=0;

                    do{

                        System.out.println("\n  Menu Transaksi");

                        System.out.println("  1.Isi pembeli");

                        System.out.println("  2.Tambah makanan");

                        System.out.println("  3.Lihat makanan");

                        System.out.println("  4.Hapus makanan");

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

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

                        pilih2 = sc.nextInt();

                        switch(pilih2){

                            case 1:

                                beli.isiPembeli(pbl);

                                break;

                            case 2:

                                System.out.print("  Nama makanan = ");

                                String n = sc.next();

                                boolean ada=false;

                                for (int i = 0; i < menu.length; i++) {

                                    if(n.equalsIgnoreCase(menu[i].getNama())){

                                        ada=true;

                                        beli.tambahMakanan(menu[i]);

                                        break;

                                    }

                                }

                                if(ada==false){

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

                                }

                                break;

                            case 3:

                                beli.lihatMakanan();

                                break;

                            case 4:

                                System.out.print("  Makanan dihapus = ");

                                String h = sc.next();

                                beli.hapusMakanan(h);

                                break;

                            case 5:

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

                                break;

                        }

                    }while(pilih2!=5);

                    break;

                case 4:

                    System.out.println("Terima Kaisih...");

                    break;

            }

        }while(pilih!=4);

    }

    

}


Class Makanan 

package pkgClassContainer;

public class cMakanan {

    private String nama;

    private int harga;

    cMakanan(String n, int h){

        nama=n; harga=h;

        System.out.println("Objek"+nama+"dibuat...");

    }

    public void setHarga(int h){

        harga=h;

    }

    public String getNama(){

        return nama;

    }

    public String ToString(){

        return "Makanan"+nama+"["+harga+"]";

    }

}

Class Pembeli 

package pkgClassContainer;

public class cPembeli {

    private String nama;

    cPembeli(){

        nama="";

        System.out.println("Objek pembeli dibuat...");        

    }

    cPembeli(String n){

        nama=n;

        System.out.println("Objek" +nama+"dibuat...");

    }

    public void setNama(String n){

        nama=n;

    }

    public String getNama(){

        return nama;

    }

    public String ToString(){

        return"Pembeli :" +nama;

    }

}


Class Transaksi 

package pkgClassContainer;

//satu pembeli banyak makanan 

public class cTransaksi {

   private cPembeli pembeli;

   private cMakanan makanan[]; //array of object

   private int jmkn,maksmkn,total;

   

   cTransaksi(){

       maksmkn=3;

       makanan=new cMakanan[maksmkn];

       jmkn=0; total=0;

       System.out.println("Pbjek transaksi dibuat..");

   }

   public void isiPembeli(cPembeli p){

     pembeli=p;

       System.out.println("isi pembeli sukses...");

   }

   public void tambahMakanan(cMakanan m){

       if(jmkn>maksmkn){

           System.out.println("kapasitas penuh!");

       }

       else{

           makanan[jmkn]=m;

           jmkn++;

           System.out.println("penambahan sukses...");

       }

   }

   public void lihatMakanan(){

       System.out.println("");

       System.out.println("Daftar Makanan");

       if(pembeli!=null)

           System.out.println("pembeli.ToString()");

       else

           System.out.println("pembeli belum ada!");

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

           System.out.println("  "+(i+1)+"."+makanan[i].ToString());

       }

   }

   public void hapusMakanan(String m){

       if(jmkn<=0){

           System.out.println("Makanan Kosong!");

       }

       else{

           boolean ada=false;

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

               if (m.equalsIgnoreCase(makanan[i].getNama())){

                   ada=true;

                   makanan[i]=null;

                   for (int j = i; j < jmkn; j++){

                       if (i==jmkn-1){

                           makanan[i]=null;

                       }else{

                           makanan[j]=makanan[j+1];

                       }                                          

                   }

                   System.out.println("Peghapusan Sukses!");

                   jmkn--;

                   break;

               }

           } 

           if(ada==false){

               System.out.println("Makanan tidak ada!");

           }

       }

   }

}



Comments