Konsep IF .. ELSE ..
Statemen IF akan bercabang sesuai dengan hasil dari operasi boolean (true & false). Pertama-tama kita akan pelajari percabangan satu arah :
if EkspresiBoolean then StatemenTrue; |
Bila ekspresi boolen bernilai benar (true), maka statemen akan dieksekusi. Bila bernilai salah maka tidak akan dieksekusi. Berikut contohnya :
uses wincrt; var a : integer; begin a := 1; write('sinau'); if a = 1 then write(' bersama'); end. |
Hasil eksekusi:
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. |
Hasil eksekusi:
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. |
Hasil eksekusi:
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; |
Bila ekspresi boolean menghasilkan nilai salah (false), maka akan dieksekusi statemen setelah else. Harus diperhatikan bahwa tanda titik koma (;) sebelum else harus dihilangkan.
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. |
Hasil eksekusi:
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 |
Penulisannya lebih mudah dipahami dengan pola seperti :
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. |
Hasil eksekusi:
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’).
Kata Kunci
if else pascal, if bersarang pascal.
Mantep infonya. thanks ya :)
sama-sama dian.. :)
Mksh y bt infonya…:)
sip mas saip
kk mau tanya untuk pascal uses wincrt;
itu identifikasinya gimana??
semoga jawaban saya tepat yak sesuai dengan yang dimaksud mas rendra.
wincrt itu suatu unit runtime library di turbo pascal for windows (dalam contoh diatas saya pake turbo pascal for windows).
unit ini berisi variabel-variabel serta fungsi dan prosedur.
wincrt mengimplementasikan terminal-like text di window, jadi kita ngga perlu menulis code lagi. Cukup memanggil wincrt yang sudah berisi variabel, fungsi dan prosedur yang mendukung implementasi suatu program.
semoga cukup jelas.