Percabangan dengan CASE OF pada Pascal
Setelah sebelumnya kita membahas percabangan dengan IF ELSE, sekarang kita akan coba membahas metode percabangan yang lain, yaitu dengan menggunakan CASE OF pada Pascal.
Tentang Percabangan CASE OF
CASE OF pada Pascal merupakan percabangan yang menggunakan variable dan nilainya untuk menentukan sebuah kondisi. Tidak seperti percabangan IF ELSE yang harus menggunakan kondisi berupa ekspresi boolean.
Kita bisa ambil contoh tentang metode penilaian dengan menggunakan huruf.
- A = Sangat Bagus
- B = Bagus
- C = Cukup
- D = Buruk
- E = Sangat Buruk
Oke... kurang lebih seperti itu, nilai urut dari A sampai E dengan predikat dari terbaik ke terburuk.
Sekarang, sebagai programmer kita punya misi untuk membuat program yang dapat mengeluarkan sebuah predikat dari sebuah nilai. Kira kira bagaimana ya?
Mungkin ada yang berpikir kita bisa menggunakan kondisi IF ELSE. Yapp betul sekali. Kurang lebih kode programnya akan terlihat sebagai berikut.
program InputNilai;
uses crt;
var
nilai: char;
begin
clrscr;
write('Masukkan Nilai: '); readln(nilai);
write('Predikat: ');
// output predikat berdasarkan nilai
if (nilai = 'A') then writeln('Sangat Bagus')
else if (nilai = 'B') then writeln('Bagus')
else if (nilai = 'C') then writeln('Cukup')
else if (nilai = 'D') then writeln('Buruk')
else if (nilai = 'E') then writeln('Sangat Buruk')
else writeln('Nilai tidak valid');
readln;
end.
Kalau kalian jalankan dan input nilai A maka kurang lebih outputnya akan seperti ini. Bisa kalian coba dengan nilai yang lainnya.
Masukkan Nilai: A
Predikat: Sangat Bagus
Oke sampai sini masalah kita telah terselesaikan, tapi untuk menuliskan perintah IF ELSE yang begitu banyak sepertinya kurang efektif. Disinilah CASE OF akan berguna.
Dengan menggunakan perintah CASE OF kita bisa mempersingkat perintah IF ELSE yang begitu banyak. Hanya dibutuhkan variable dan kondisi dari nilainya.
Format Penulisan CASE OF
Komponen utama dari perintah CASE OF adalah sebuah variable, kondisi nilai, dan perintah yang akan dijalankan. Untuk formatnya sebagai berikut.
case ({variable}) of
nilai-1: {perintah 1}
nilai-2: {perintah 2}
.
.
nilai-n: {perintah n}
else {perintah jika tidak ditemukan nilai}
end;
Nilai 1 sampai n merupakan nilai dari variable yang kita gunakan. Nantinya perintah akan dijalankan sesuai nilai dari variable tersebut. Oke daripada bingung langsung kita lihat saja contohnya.
Contoh Penggunaan CASE OF
Sekarang kita akan coba memodifikasi kode yang kita buat sebelumnya. Tetap dengan nilai dan predikat yang ada, namun kita coba menggunakan kondisi CASE OF. Kira kira bagaimana? Bisa kalian lihat pada kode berikut ini.
program InputNilai;
uses crt;
var
nilai: char;
begin
clrscr;
write('Masukkan Nilai: '); readln(nilai);
write('Predikat: ');
// menggunakan kondisi case of
case (nilai) of
'A': writeln('Sangat Baik');
'B': writeln('Baik');
'C': writeln('Cukup');
'D': writeln('Buruk');
'E': writeln('Sangat Buruk');
else writeln('Nilai tidak valid');
end;
readln;
end.
Kalau kalian coba jalankan pasti outputnya akan sama seperti program yang kita buat sebelmunya. Tapi jelas dengan menggunakan CASE OF, penulisan kode bisa lebih mudah dibaca, dan pastinya lebih singkat dari menggunakan IF ELSE.
Walaupun lebih singkat dan lebih simpel, tetapi tidak semua kodisi dapat dituliskan dengan CASE OF. Jika kita menginginkan kodisi yang menggunakan expresi boolean maka tetap harus menggunakan perintah IF ELSE.
Yah saya kira kalian sudah dapat konsepnya hehe...
Penutup
Cukup sekian untuk tutorial kali ini semoga bermanfaat