Cari aja disini

Sabtu, 20 Oktober 2012

Contoh Program Kasir dengan OOP with Java

Contoh Program Kasir dengan OOP with Java

Sangat Banyak variasi pembuatan program dengan java, sesuai logika masing – masing orang. Dimisalkan seperti contoh program kasir dibawah ini, merupakan tugas project 1 saya dengan OPP with Java. Saya ingin memberi sedikit apa yang saya ketahui tentang java. Semoga dapat  membantu teman – teman semua… :)
import java.util.Scanner;  //sintak jika user harus menginputkan inputan
public class project1 { //Part_A
public static void main(String[] args){ //main method
Scanner scan_Char = new Scanner (System.in); //menangkap inputan bertipe charakter /string
Scanner scan = new Scanner(System.in);      //menangkap inputan bertipe integer
int cakeawal=25,makecake=0, sisacake=0;
makecake=cakeawal;
int coffee=0, cake=0, shake=0;
int totalcof=0, totalca=0, totalsh=0;
int pesancof=0,pesansh=0,pesanca=0;
int hargacof=0,hargash=0,hargaca=0;
int hargacoffee=5000,hargashake=7000,hargacake=6000;
int totalbayar,totalpembelian=0,bayar,sisa,totalpembelian1=0;
String pilih;
int temppesancof=0, temppesansh=0, temppesanca=0;
int pricecoffee=0, priceshake=0, pricecake=0; //menyimpan total pembelian setiap makanan agar setelah diubah harga laporan sesuai pembelian
int pembcof=0, pembsh=0, pembca=0; //menampung total pembelian setiap makanan
do{ //perulangan do digunakan untuk mengulang menu kasir yang ada selama user tidak memilih keluar
System.out.println(“==================================================================”);
System.out.println(“========================= THE GEEK CAFE ==========================”);
System.out.println(“==================================================================”);
System.out.println(“Menu : “);
System.out.println(“\t\t a. Pemesanan”);
System.out.println(“\t\t b. Buat Cake”);
System.out.println(“\t\t c. Tampilkan Laporan Penjualan”);
System.out.println(“\t\t d. Ubah”);
System.out.println(“\t\t e. Keluar\n”);
System.out.print(” – Please select this menu above ? “);
pilih = scan_Char.nextLine();
if(pilih.equals(“a”)||pilih.equals(“A”)){
pesancof=0;
pesansh=0;
pesanca=0;
int pilihan=0;
do{ //perulangan yang digunakan untuk mengulang menu pemesanan selama user tidak memilih untuk selesai
System.out.print(“Menu Pemesanan : “);
System.out.println(“1. Coffee”);
System.out.println(“\t\t 2. Shake”);
System.out.println(“\t\t 3. Cake”);
System.out.println(“\t\t 4. Completed select”);
System.out.print(“Please select this menu above ? “);
pilihan=scan.nextInt();
if(pilihan==1){
System.out.print(“Berapa banyak coffee yang ingin dibeli : “);
coffee=scan.nextInt(); //pembelian kopi disimpan di coffee
pesancof=pesancof+coffee; //dan dari coffee disimpan di pesancof untuk pembelian berikutnya ditambah
temppesancof+=pesancof; //penyimpnan setiap pembelian coffee
pembcof=hargacoffee*pesancof;
pricecoffee=pricecoffee+pembcof;
//totalcof=totalcof+pesancof;
}
else if(pilihan==2){
System.out.print(“Berapa banyak shake yang ingin dibeli : “);
shake=scan.nextInt(); //pembelian shake disimpan di shake
pesansh=pesansh+shake; //dan dari shake disimpan di pesansh untuk pembelian berikutnya ditambah
temppesansh+=pesansh; //penyimpnan setiap pembelian shake
pembsh=hargashake*pesansh;
priceshake=priceshake+pembsh;
//totalsh=totalsh+pesansh;
}
else if(pilihan==3){
System.out.print(“Berapa banyak cake yang ingin dibeli : “);
cake=scan.nextInt(); //pembelian cake disimpan di cake
if(cake>cakeawal){ //pengecekan cake yang dibeli jika melebihi persedian
System.out.println(“Maaf, persediaan cake tidak cukup”); // akan dikerjakan
}
else{ //jika memenuhi kondisi ini makan akan dkerjakan
cakeawal=cakeawal-cake; //cakeawal akan dikuarangi jumlah pembelian cake
pesanca=pesanca+cake; //  dan dari cake disimpan di pesancake untuk pembelian berikutnya ditambah
temppesanca+=pesanca; //penyimpnan setiap pembelian cake
pembca=hargacake*pesanca;
pricecake=pricecake+pembca;
//totalca=totalca+pesanca;
}
}
else if(pilihan==4){
hargacof=hargacoffee; //penginisialisasian harga coffee awal disimpan di hargacof agar setelah hargacoffee dibuah harga akan mengubah hargacof
hargash=hargashake; //idem
hargaca=hargacake; //idem
totalpembelian=((pesancof*hargacof)+(pesansh*hargash)+(pesanca*hargacake)); //totalpembelian menghitung jumlah makanan yg dibeli(yang disimpan di pesancof/pesansh/pesanca) dengan dikalikan harganya
do{ //perulangan yang digunakan untuk mengulang menu pembayaran selama uang yang dibayar kurang dari total pembelian maka akan mengulang
System.out.println(“Total biayanya adalah Rp. “+totalpembelian);
System.out.print(“Masukkan jumlah uang pembayaran : “);
bayar=scan.nextInt(); //menangkap inputan user dan disimpan di bayar
sisa=bayar-totalpembelian; //untuk kembalian
}while (bayar<totalpembelian);
if(sisa==0){  //jika uang yang dibayar pas makan akan dikerjakan
System.out.println(“Uang Pas. Terima kasih atas pembeliannya”);
}
else{  //jika uang yang dibayar lebih makan akan dikerjakan
System.out.println(“Pengembalian “+sisa);
}
}
else{ //kondisi yang akan dikerjakan jika user menginputkan selain pilihan yang ada di menu pemesanan
System.out.println(“Maaf, pilihan yang anda masukkan salah”);
}
}while(pilihan!=4); //selama tidak memilih selesai makan akan mengulang menu pemesanan
}
else if(pilih.equals(“b”)||pilih.equals(“B”)){ //akan dikerjakan jika pilihan user memilih b (menu buat cake)
cakeawal=cakeawal+25; //cake awal akan ditambahkan 25 bauh cake
System.out.println(“25 cake sudah ditambah. Total cake di cafe sekarang “+cakeawal);
}
else if(pilih.equals(“c”)||pilih.equals(“C”)){ //akan dikerjakan jika pilihan user memilih c (menu laporan penjualan)
//hargacof=hargacoffee;
//hargash=hargashake;
//hargaca=hargacake;
totalpembelian1=(pricecoffee)+(priceshake)+(pricecake); //total pembelian dari seluruh pembelian yang diinputkan oleh user
//agar pencetakan laporan mencetak semua pembelian/transaksi yang ada
sisacake=cakeawal; //penginisialisaian sisa cake yang tidak terjual sama dengan cake yang disimpan di cakeawal yang cakeawal sudah dikurangi dengan cake(penyimpanan cake yang dibeli)
System.out.println(“\nCake belum terjual : “+sisacake);
System.out.println(“Coffee \t: “+temppesancof+”\tRp. “+(pricecoffee)); //menampilkan jumlah coffee yang dibeli dan total pembelian
System.out.println(“Shake  \t: “+temppesansh+”\tRp. “+(priceshake));    //menampilkan jumlah shake yang dibeli dan total pembelian
System.out.println(“Cake   \t: “+temppesanca+”\tRp. “+(pricecake)); //menampilkan jumlah cake yang dibeli dan total pembelian
System.out.println(“_______________________________”);
System.out.println(“Total  \t: “+(temppesancof+temppesansh+temppesanca)+”\tRp. “+totalpembelian1); //total smw pembelian
}
else if(pilih.equals(“d”)||pilih.equals(“D”)){ //akan dikerjakan jika pilihan user memilih d (menu mengubah harga)
int diubah = 0; //tipe data int dengan variabel diubah untuk penyimpanan inputan user yang akan diubah
int hargacoffeebaru=0,hargashakebaru=0,hargacakebaru=0; //penyimpanan harga baru
while (diubah !=4){ //selama user tidak memilih 4(selesai) dari menu dibawah makan akan dikerjakan berulang-ulang
System.out.println(“\nUbah Harga :\n \t1. Kopi \t2. Shake \t3. Cake \t4. Selesai”);
System.out.print(“Pilih nomor yang akan di ubah harganya : “);
diubah = scan.nextInt();
switch (diubah){
case 1:
System.out.print(“Harga kopi awal “+hargacoffee+”. Masukkan harga kopi baru : “);
hargacoffeebaru = scan.nextInt(); //penyimpanan inputan user di hargacoffeebaru
hargacoffee=hargacoffeebaru;
break; //case1 akan berhenti
case 2:
System.out.print(“Harga Shake awal “+hargashake+”. Masukkan harga Shake baru : “);
hargashakebaru = scan.nextInt(); //penyimpanan inputan user di hargashakebaru
hargashake=hargashakebaru;
break; //case2 akan berhenti
case 3:
System.out.print(“Harga cake awal “+hargacake+”. Masukkan harga cake baru : “);
hargacakebaru = scan.nextInt(); //penyimpanan inputan user di hargacakebaru
hargacake=hargacakebaru;
break; //case3 akan berhenti
default : //dikerjakan jika user menginputankan tidak sesuai menu yang ada
System.out.println(“Masukkan menu yang ada!!”);
break; //default akan berhenti
}
}
}
else if(pilih.equals(“e”)||pilih.equals(“E”)){ //akan dikerjakan jika pilihan user memilih e dan program akan berhenti
System.out.println(“Bye bye”);
break;
}
}while(!pilih.equals(“e”)||!pilih.equals(“E”)); //pengecekan kondisi selama pilihan user dari menu awal tidak sama dengan e makan akan diulang
}
}

Tidak ada komentar:

Posting Komentar