About Me

Kumpulan cerita, ocehan, renungan dan filosofi hasil dari buah pikiran sendiri dicampur aduk dengan buah pikiran orang :D

Rabu, 21 April 2010

Percabangan Dengan Pernyataan Switch Case

OK, dalam postingan kali ini saya akan berbagi kembali dan mengutek-utek program yang sebelumnya sudah ada (Toko Susu Mantaf) yang sebelumnya sudah di bahas di posting sebelumnya (nah lo, sebelumnya-nya banyak banget)

Kali ini, pembahasannya sama dengan materi yang saya dapat pada hari Senin kemarin (19 April 2010), yakni merubah struktur program yang awalnya menggunakan pernyataan if, diganti dengan pernyataan switch case. Dengan program yang sama dan hasil output yang sama.

Mungkin untuk lebih afdolnya, kita bahas dulu apa sih sebenernya fungsi switch case itu. Ok, let's begin..

Bentuk switch case merupakan bentuk pernyataan yang dirancang khusus untuk menangangi pengambilan kepusysan yang melibatkan beberapa atau bahkan banyak alternatif. Pernyataan ini sama fungsinya dengan if-else bertingkat (Nested if), tetapi jenis varible yang digunakan hanya vertipe char dan int. Jadi hanya karakter tunggal yang boleh dijadikan konstanta, kalau rekan-rekan menggunakan konstanta ganda, misal "kode", ya nggak bisa, kudu diganti deh, misalnya "kode" di swtch case konstantanya diganti jadi "k".
Untuk lebih jelasnya mari kita lihat bentuk Umumnya,

switch (ekpresi interger atau character)
{
case 'konstanta1':
perintah1;
perintah2;
break;
case 'konstanta2:
perintah3;
perintah4;
break;
default:
perintah5;
perintah6;
}


Nah begitu. Lanjut ke Syntax yang saya buat, adalah sebagai berikut di bawah ini... (jerenjeng,,,,,,,-backsound)

#include
#include
#include
main()
{
char nama[20],ks,ku, jenis[15], ukuran[15], jwb;
long int harga, beli, total, bayar, kembali;

atas:
clrscr();
cout<<"==========================="<cout<<"TOKO SUSU 'MANTAF' Cikarang"<cout<<"==========================="<cout<<"Nama Pelanggan :";cin>>nama;
cout<<"Kode Susu (A/B/C) :";cin>>ks;
cout<<"Kode Ukuran (1/2/3) :";cin>>ku;
cout<<"Jumlah Beli :";cin>>beli;
cout<<"==========================="<cout<
switch (ks)
{
case 'A':
case 'a':
strcpy(jenis,"Dancow");
switch (ku)
{
case '1':
strcpy (ukuran,"Kecil");
harga=25000;
break;
case '2':
strcpy(ukuran,"Sedang");
harga=30000;
break;
default:
strcpy(ukuran,"Besar");
harga=40000;
}

case 'B':
case 'b':
strcpy(jenis,"Milo");
switch (ku)
{
case '1':
strcpy (ukuran,"Kecil");
harga=21000;
break;
case '2':
strcpy(ukuran,"Sedang");
harga=27000;
break;
default:
strcpy(ukuran,"Besar");
harga=35000;
}

default:
strcpy(jenis,"Bendera");
switch (ku)
{
case '1':
strcpy (ukuran,"Kecil");
harga=40000;
break;
case '2':
strcpy(ukuran,"Sedang");
harga=45000;
break;
default:
strcpy(ukuran,"Besar");
harga=50000;
}
}


total=harga*beli;
cout<clrscr();
cout<<"==================================="<cout<<"DATA TOKO SUSU 'MANTAF' Cikarang "<cout<<"==================================="<cout<<"Nama Pelanggan : "<cout<<"Jenis Susu : "<cout<<"Ukuran Susu : "<cout<<"Harga : "<cout<<"Jumlah Beli : "<cout<<"==================================="<cout<<"Total Pembelian : "<cout<<"Uang Bayar : ";cin>>bayar;
kembali=bayar-total;

if (bayarcout<<"Uang Anda Kurang"<else
cout<<"Uang Kembali : "<cout<
cout<<"Mau Input Data Lagi?? (Y/T) :";cin>>jwb;

if (jwb=='Y' || jwb=='y')
goto atas;
else
cout<<"Terimakasih Atas Kunjungan Anda."<getch();
}


Nah, dari kumpulan perintah diatas, hasilnya kaya gambar di bawah ini :



Begitulah. Kembali lagi saya ingatkan. Bagi rekan-rekan pembaca yang merasa senasib dengan saya atau sudah unggul dari pada saya, mohon berbagi pendapat. Syukur-syukur ada yang nambahin, malah saya berharap banget ada yang nambahin, jadi saya bisa belajar. Demikian dari saya, kalau ada kesalahan, tolong beritahu saya, bisa via comment di posting ini, atau via shoutmix ditax samping kiri.

Tidak ada komentar: