Bab 5 - Seleksi Kondisi
Suatu aksi dapat dilakukan berdasarkan kondisi-kondisi tertentu yang telah didefinisikan sebelumnya. Di dalam Pascal, seleksi kondisi akan sangat erat dengan if-else
dan case
.
Seleksi If-Else
Struktur dasar dari seleksi ini adalah
{ seleksi dengan 1 kasus }
if (kondisi) then begin
{ statement yang ingin dijalankan berdasarkan kondisi.. }
end;
{ seleksi dengan 2 kasus }
if (kondisi) then begin
{ statement yang dijalankan ketika kondisi bernilai true.. }
end else begin
{ statement yang dijalankan ketika kondisi bernilai false.. }
end;
{ seleksi dengan lebih dari 2 kasus }
if (kondisi) then begin
{ statement yang dijalankan ketika kondisi bernilai true.. }
end else if (kondisi1) then begin
{ statement yang dijalankan ketika kondisi1 bernilai true.. }
end else if (kondisi2) then begin
{ statement yang dijalankan ketika kondisi2 bernilai true.. }
.
.
.
end else begin
{ statement yang dijalankan ketika semua kondisi bernilai false.. }
end;
Perhatikan contoh kode berikut..
var
n : integer;
begin
n := 100;
if (n mod 2 = 0) then begin
writeln('Bilangan genap');
end else begin
writeln('Bilangan ganjil');
end;
end.
Potongan kode diatas akan menghasilkan output...
Bilangan genap
...karena nilai n
memenuhi kondisi 100 mod 2 = 0
.
Seleksi Case
Berbeda dengan seleksi if-else
, seleksi case
digunakan untuk memilih suatu statement berdasarkan pada nilai-nilai konstan yang telah didefinisikan di dalam blok case
. Seleksi ini tidak boleh mengandung ekspresi logika apapun.
Contoh kode
var
c : char;
begin
{ statement lain... }
case c of
{ boleh menggunakan ekspresi range.. }
'a'..'z': writeln('Huruf kecil');
'A'..'Z': writeln('Huruf besar');
'0'..'9': writeln('Angka');
'+': writeln('Karakter +');
'*': writeln('Karakter *');
else writeln('Karakter lain');
end;
end.
Output kode diatas bergantung pada nilai dari variabel c
.