Statemen IF akan bercabang sesuai dengan hasil dari operasi boolean (true & false). Pertama-tama kita akan pelajari percabangan satu arah :
if EkspresiBoolean then
StatemenTrue;
uses wincrt;
var a : integer;
begin
a := 1;
write('sinau');
if a = 1 then
write(' bersama');
end.
sinau bersama
Penjelasan:
Diawal diberikan nilai pada a yaitu 1. Setelah dilakukan output (‘sinau’), nilai a diuji, karena nilai a bernilai benar (a=1) maka dilakukan output (‘ bersama’).
uses wincrt;
var a : integer;
begin
a := 0;
write('sinau');
if a = 1 then
write(' bersama');
end.
sinau
Penjelasan:
Diawal diberikan nilai pada a yaitu 1. Setelah dilakukan output (‘sinau’), nilai a diuji, karena nilai a bernilai salah (a=0) maka program melewati statemen if dan selesai dieksekusi.
Bila statemen IF hanya mempunyai satu statemen saja, tidak diperlukan penanda (begin-end). Tapi bila lebih maka harus menggunakan begin-end.
uses wincrt;
var a : integer;
begin
a := 1;
write('sinau');
if a = 1 then begin
write(' bersama');
write(' sahabat');
end;
end.
sinau bersama sahabat
Penjelasan:
Diawal diberikan nilai pada a yaitu 1. Setelah dilakukan output (‘sinau’), nilai a diuji, karena nilai a bernilai benar (a=1) maka dilakukan output (‘ bersama’) dan output (‘ sahabat’).
Juga terdapat percabangan dua arah :
if EkspresiBoolean then
StatemenTrue
else
StatemenFalse;
uses wincrt;
var a : integer;
begin
a := 0;
write('sinau');
if a = 1 then begin
write(' bersama');
write(' sahabat');
end
else begin
write(' pascal');
write(' bersama keluarga');
end;
end.
sinau pascal bersama keluarga
Diawal diberikan nilai pada a yaitu 0. Setelah dilakukan output (‘sinau’), nilai a diuji, karena nilai a bernilai salah (a=0) maka dilakukan output (‘ pascal’) dan output (‘ bersama keluarga’).
Terkadang kita memerlukan lebih dari dua percabangan, maka kita memerlukan if bersarang (nested if).
if EkspresiBoolean1 then
Statemen1
else
if EkspresiBoolean2 then
Statemen2
else then
Statemen3
if EkspresiBoolean1 then
Statemen1
else if EkspresiBoolean2 then
Statemen2
else then
Statemen3
uses wincrt;
var a : integer;
begin
a := 3;
write('sinau');
if a = 1 then
write(' bersama');
else if a = 2 then
write(' pascal');
else
write(' pemrograman');
end.
sinau pemrograman
Diawal diberikan nilai pada a yaitu 1. Setelah dilakukan output (‘sinau’), nilai a diuji, karena nilai a bernilai salah (a tidak sama dengan 1) maka dilakukan pengujian if berikutnya, if berikutnya pun bernilai salah (a tidak sama dengan 2) maka dilakukan statemen pada else yaitu output berupa (‘ pemrograman’).
0 komentar:
Speak up your mind
Tell us what you're thinking... !