Melanjutkan tutorial belajar pascal di Duniailkom, kali ini kita akan membahas tentang struktur percabangan CASE dalam bahasa pemrograman Pascal.
Pengertian Struktur Percabangan CASE dalam Pascal
Secara sederhana, struktur percabangan CASE mirip seperti struktur IF THEN ELSE yang berulang. Jika di dalam IF THEN ELSE kita memiliki format penulisan seperti berikut:
IF (kondisi1) THEN
(kode program 1)
ELSE IF (kondisi2) THEN
(kode program 2)
ELSE IF (kondisi3) THEN
(kode program 3)
Maka di struktur CASE, format penulisannya seperti ini:
CASE (expression) OF
kondisi 1 : (kode program 1);
kondisi 2 : (kode program 2);
kondisi 3 : (kode program 3);
end;
Expression adalah ‘sesuatu’ yang akan di periksa nilainya. Jika nilai dari expression ini sama dengan kondisi 1, maka yang dijalankan adalah (kode program 1), jika sesuai dengan kondisi 2, maka yang akan dijalankan adalah (kode program 2), dst.
Penjelasan ini akan lebih mudah jika menggunakan contoh kode program.
Contoh Kode Program Pascal untuk Struktur IF THEN ELSE
Saya ingin membuat program yang jika seseorang menginput angka 1, akan tampil teks “Januari”, yakni bulan pertama dalam 1 tahun. Jika diinput angka 2, akan tampil teks “Februari”. Demikian seterusnya hingga angka ke 12 yang akan menampilkan teks “Desember”. Bagaimana cara membuat program seperti ini?
Berikut kode program Pascal yang saya gunakan:
program struktur_if_then_else;
uses crt;
var
bulan: integer;
begin
clrscr;
write('Silahkan input angka untuk bulan (1-12): ');
readln(bulan);
if (bulan = 1) then
writeln('Januari')
else if (bulan = 2) then
writeln('Februari')
else if (bulan = 3) then
writeln('Maret')
else if (bulan = 4) then
writeln('April')
else if (bulan = 5) then
writeln('Mei')
else if (bulan = 6) then
writeln('Juni')
else if (bulan = 7) then
writeln('Juli')
else if (bulan = 8) then
writeln('Agustus')
else if (bulan = 9) then
writeln('September')
else if (bulan = 10) then
writeln('Oktober')
else if (bulan = 11) then
writeln('Novemver')
else if (bulan = 12) then
writeln('Desember');
readln;
end.
Kode program diatas lumayan panjang. Namun jika anda sudah memahami struktur logika IF THEN ELSE, sebenarnya cukup sederhana.
Di awal kode program, saya mendefenisikan sebuah variabel bulan dengan tipe data integer. Artinya variabel bulan hanya bisa diisi dengan angka bulat, seperti 1, 2, 7, dst. Kemudian saya meminta user mengisi variabel ini, yakni dengan perintah:
write('Silahkan input angka untuk bulan (1-12): ');
readln(bulan);
Sekarang, apapun angka yang diinput oleh user akan disimpan ke dalam variabel bulan.
Saya bisa mengecek nilai variabel angka menggunakan struktur IF THEN ELSE, dimana if (bulan = 1) maka jalankan writeln(‘Januari’). Jika variabel bulan bukan berisi angka 1, lanjut ke kondisi berikutnya, yakni else if (bulan = 2) then writeln(‘Februari’), demikian seterusnya hingga Desember.
Disini saya tidak menggunakan blok program begin dan end; untuk setiap kondisi if, semata-mata agar kode programnya menjadi lebih singkat. Penulisan yang disarankan adalah seperti ini:
if (bulan = 1) then
begin
writeln('Januari')
end
Jika ditulis tanpa blok ini, kita tidak boleh menempatkan tanda titik koma pada baris sebelum perintah ELSE. Sebagai contoh, kode program berikut akan menghasilkan error:
if (bulan = 1) then
writeln('Januari'); <-- diakhiri tanda ‘ ; ’
else if (bulan = 2)
Karena tanda titik koma pada writeln(‘Januari’); tidak boleh ditulis, jadi harus ditulis seperti ini:
if (bulan = 1) then
writeln('Januari') <-- harus ditulis tanpa ‘ ; ’
else if (bulan = 2)
Contoh Kode Program Pascal untuk Struktur CASE
Kode program IF THEN ELSE sebelumnya tidak salah dan berjalan sesuai dengan keinginan saya. Namun untuk program yang kondisi logikanya cukup sederhana (seperti perbandingan angka tersebut), kita bisa menggunakan alternatif penulisan dengan struktur CASE.
Berikut contoh kode programnya:
program struktur_case;
uses crt;
var
bulan: integer;
begin
clrscr;
write('Silahkan input angka untuk bulan (1-12): ');
readln(bulan);
case (bulan) of
1 : writeln('Januari');
2 : writeln('Februari');
3 : writeln('Maret');
4 : writeln('April');
5 : writeln('Mei');
6 : writeln('Juni');
7 : writeln('Juli');
8 : writeln('Agustus');
9 : writeln('September');
10 : writeln('Oktober');
11 : writeln('November');
12 : writeln('Desember');
end;
readln;
end.
Terlihat lebih rapi dan lebih singkat. Mari kita bahas!
Pada 8 baris pertama kode program, sama persis dengan sebelumnya. Dimana saya membuat variabel bulan, kemudian meminta inputan dari pengguna.
Dibaris ke 10, terdapat perintah case (bulan) of, inilah awal dari blok CASE. Perhatikan di baris ke 23 terdapat perintah end; yang menandakan akhir dari blok CASE.
Perintah case (bulan) of artinya saya ingin memeriksa apakah nilai dari dari variabel bulan sesuai dengan beberapa kondisi. Kondisi ini ditulis sepanjang blok CASE, dengan format:
kondisi1 : kode program 1;
kondisi2 : kode program 2;
kondisi3 : kode program 3;
dst...
Karena saya ingin memeriksa nilai bulan dari 1 – 12, maka penulisannya sebagai berikut:
1 : writeln('Januari');
2 : writeln('Februari');
3 : writeln('Maret');
4 : writeln('April');
5 : writeln('Mei');
6 : writeln('Juni');
7 : writeln('Juli');
8 : writeln('Agustus');
9 : writeln('September');
10 : writeln('Oktober');
11 : writeln('November');
12 : writeln('Desember');
Jika nilai variabel bulan berisi angka 9, maka jalankan perintah writeln(‘September’), jika nilai variabel bulan adalah 12, maka jalankan perintah writeln(‘Desember’).
Ketika dijalankan, kode program CASE ini sama persis seperti contoh IF THEN ELSE sebelumnya.
Dalam tutorial kali ini kita telah mempelajari pengertian serta contoh penggunaan struktur CASE di dalam bahasa pemrograman PASCAL. Namun struktur CASE ini sendiri masih memiliki beberapa fitur tambahan, seperti CASE ELSE, atau memeriksa beberapa kondisi sekaligus. Inilah yang akan kita bahas dalam tutorial selanjutnya: Struktur Percabangan CASE ELSE dalam Pascal.
Sumber wk.com
EmoticonEmoticon