Case Of
tertentu juga CASE lebih memberikan kejelasan yang lebih dari pada IF. Namun semua persoalan yang dapat ditangani CASE dapat ditangani oeh IF tetapi tidak sebaliknya.
2. Struktur CASE OF Mempunyai suatu ungkapan logika yang biasanya disebut dengan selector dan sejumlah statement yang diawali dengan suatu label suatu permasalahan (CASE LABEL) yang mempunyai tipe sama dengan selector. Statement yang berisi tentang CASE LABEL dan bernilai sama dengan selector akan diproses sedangkan statement yang lain tidak.
3. Format Lengkap Pada CASE OF
case Harga Of
daftar_harga_1 : Pernyataan_1;
daftar_harga_2 : Pernyataan_2;
.....
daftar_harga_m : Pernyataan_m;
Else
Pernyataan_n :
End
4. Mekanisme Kerja CASE OF
Pada pernyataan diatas pengujian yang dilakukan dengan mencocokkan harga dan daftar_harga, dimulai dari yang paling atas. Kalaupun dalam pengujian tidak ada yang cocok, daftar_harga berikutnya akan diperiksa. Kalau sudah ada yang cocok, pernyataan yang terletak sesudah tanda : akan dijalankan dan kemudian di eksukusi dan dilanjutkan ke END.
Pada bagian else hanya akan dujalankan kalau pada daftar_harga tidak ada yang cocok.
Dalam sejauh ini pada CASE OF selalu menggunakan bagian ELSE. Namun sebenarnya bagian ELSE tidak digunakan pada CASE OF tidak menjadi suatu masalah.
CONTOH PROGRAM
Rumus Program :
program penjualan_fotocopy;
uses
crt;
var
jumlah,bayar,kode:integer;
begin
clrscr;
writeln('PROGRAM DAFTAR HARGA KERTAS FOTOCOPY');
writeln('Keterangan=');
writeln('kode 1=Polio Harga = Rp. 150,00');
writeln('kode 2=Kuarto Harga = Rp. 100,00');
writeln('kode 3=Hvs Harga = Rp. 200,00');
writeln('kode 4=Lenin Harga = Rp. 250,00');
writeln('--------------------------------------------------');
writeln('Masukkan Kode Kertas=');
readln(kode);
writeln('Jumlah Yang di Fotocopy=');
readln(jumlah);
case kode of
1 : bayar := jumlah*150;
2 : bayar := jumlah*100;
3 : bayar := jumlah*200;
4 : bayar := jumlah*250;
else write('kode yang tidak terdaftar');
end;
writeln('Biaya Yang Harus di Bayar= Rp.' ,bayar,',00');
readln;
end.
uses
crt;
var
jumlah,bayar,kode:integer;
begin
clrscr;
writeln('PROGRAM DAFTAR HARGA KERTAS FOTOCOPY');
writeln('Keterangan=');
writeln('kode 1=Polio Harga = Rp. 150,00');
writeln('kode 2=Kuarto Harga = Rp. 100,00');
writeln('kode 3=Hvs Harga = Rp. 200,00');
writeln('kode 4=Lenin Harga = Rp. 250,00');
writeln('--------------------------------------------------');
writeln('Masukkan Kode Kertas=');
readln(kode);
writeln('Jumlah Yang di Fotocopy=');
readln(jumlah);
case kode of
1 : bayar := jumlah*150;
2 : bayar := jumlah*100;
3 : bayar := jumlah*200;
4 : bayar := jumlah*250;
else write('kode yang tidak terdaftar');
end;
writeln('Biaya Yang Harus di Bayar= Rp.' ,bayar,',00');
readln;
end.
Gambar Hasil Program
Sebelum Program di Jalankan
Sesudah Program di Jalankan
Created by : Dedo Soeryo Seto P.




