Kalian pernah memainkan game Angry Bird, kan? Kapan kalian bisa naik ke level berikutnya? Tentu jika kalian berhasil mengenai semua musuh, jika tidak maka kalian akan mengulangi level yang kalian mainkan. Demikian juga ketika kalian memainkan permainan lain seperti sepakbola contohnya. Apa saja yang terjadi jika salah satu tim bisa memasukkan bola? Maka jika terjadi goal maka akan ditampilkan perayaan gol, reply kemudian kick off lagi oleh tim yang kemasukan. Dari contoh tersebut ditunjukkan dalam berbagai program apakah itu aplikasi, game (permainan) atau program lain, tidak pernah lepas dengan kejadian bersyarat, atau percabangan, yang ditandai dengan kata JIKA MAKA.
Ketika
kalian menggunakan e-mail atau facebook, kalian diminta memasukkan username
dengan benar dan password dengan benar maka kalian bisa masuk, jika tidak akan
muncul username atau password salah. Kapan notifikasi akan muncul, jika akun
teman kita update status, atau ada teman yang mengomentari status kita, dan
sebagainya. Di mesin aplikasi mesin ATM pun juga pasti menggunakan kondisi
bersyarat seperti ini, dari muali pertama measukkan PIN jika benar dapat masuk
jika tidak maka kita diminta memasukkan kembali PIN yang benar. Setelah bisa masuk,
ada menu, misalkan penarikan uang, kita mengambil uang 250000 di mesin ATM yang
hanya menyediakan pecahan 100000, apa yang terjadi? Maka ATM akan memberikan
pesan. Dan masih banyak lagi kasus-kasu kondisi bersyarat seperti ini.
Kondisi
bersyarat memungkinkan sebuah program atau algortima memberikan alternative
langkah atau operasi untuk beberapa persyaratan yang diberikan. Oleh karena itu
disebut sebagai struktur percabangan. Perintah yang digunakan dalam struktur
percabangan disebut sebagai perintah percabangan, yakni jika sebuah kondisi
terpenuhi, jalankan kode program ini. Jika tidak, jalankan kode program yang
lain.
Di
dalam Pascal terdapat beberapa struktur kondisi seperti ini. Kita akan mulai
dari yang paling sederhana, yang disebut sebagai struktur percabangan satu
kondisi yakni percabangan
kondisi IF THEN.
Konsep dasar dari percabangan perintah IF THEN dalam bahasa
pemrogram Pascal adalah sebagai berikut:
1 2 3 4 |
IF (kondisi) THEN begin (kode program) end; |
Kondisi berperan sebagai penentu dari stuktur percabangan ini.
Jika kondisi terpenuhi (menghasilkan nilai TRUE), kode program akan dijalankan. Jika kondisi tidak terpenuhi (menghasilkan nilai FALSE), tidak terjadi apa-apa. Kondisi biasanya terdiri dari operasi
perbandingan, misalnya apakah variabel a berisi angka
10, atau variabel password berisi string
‘rahasia’.
Bagian yang ditandai dengan begin dan end; merupakan
“blok” kode program yang akan dijalankan seandainya kondisi bernilai TRUE. Setelah itu, Pascal akan lanjut mengeksekusi kode
program dibawahnya.
Mari langsung praktek dengan menggunakan contoh kode program.
Contoh Kode Program Percabangan IF THEN Pascal
Sebagai contoh pertama, silahkan pelajari kode program berikut
ini:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
program struktur_if_then; uses crt; var angka: integer; begin clrscr; angka := 10; if (angka > 5) then begin writeln('Variabel "angka" lebih besar dari 5'); end; writeln('Belajar Pascal di TKJ SMK Muh Watukelir'); readln; end. |
Pada awal kode program saya membuat sebuah
variabel “angka” dengan nilai 10 (integer).
Kemudian saya memeriksa sebuah kondisi menggunakan perintah if then.
if (angka > 5) artinya saya ingin memeriksa apakah
nilai dari variabel “angka” lebih besar dari 5. Jika
iya, kondisi tersebut akan menghasilkan nilai TRUE. Akibatnya,
kode program writeln(‘Variabel “angka” lebih besar dari 5’) akan
dijalankan.
Setelah blok kondisi if selesai diproses, Pascal lanjut menjalankan
kode program setelah blok if then, yakni
baris writeln(‘Belajar Pascal di Duniailkom’) hingga
akhir kode program yang di tandai dengan end.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
program struktur_if_then; uses crt; var angka:integer; begin clrscr; angka:=10; if (angka > 5) then begin writeln('===================================='); writeln('Variabel "angka" lebih besar dari 5'); writeln('===================================='); end; writeln('Belajar Pascal di TKJ SMK Muh Watukelir'); readln; end. |
Jika anda browsing atau melihat tutorial lain, kebanyakan bagian blok begin dan end; ini tidak ditulis. Jika seperti ini, perintah yang dijalankan (saat kondisi TRUE) hanya boleh 1 baris saja, seperti contoh berikut:
1 2 3 4 5 6 7 8 9 10 11 12 |
program struktur_if_then; uses crt; var angka:integer; begin clrscr; angka:=5; if (angka > 5) then writeln('Variabel "angka" lebih besar dari 5'); writeln('Belajar Pascal di TKJ SMK Muh Watukelir'); readln; end. |
Namun sangat sangat disarankan untuk selalu
membuat blok begin dan end; pada setiap kondisi if, karena seperti yang terlihat dari kode program
diatas, susah untuk memastikan apakah baris writeln(‘Belajar Pascal di
Duniailkom’) termasuk ke dalam blok if atau tidak, yang kenyataannya memang tidak
termasuk.
Sebagai contoh yang lebih interaktif, silahkan jalankan
kode program berikut:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
Kali ini saya membuat
program yang meminta input dari pengguna (menggunakan perintah readln), lalu disimpan kedalam variabel angka.
Variabel angka selanjutnya saya periksa menggunakan
kondisi if (angka mod 2 = 0). Anda
masih ingat dengan operator mod?
Operator mod akan menghasilkan
sisa hasil bagi dari suatu bilangan.
Dengan menulis if (angka mod 2 = 0) artinya saya
memeriksa apakah variabel angka jika
dibagi 2 sisanya 0? Sebagai contoh, 4 mod 2 = 0 (sesuai dengan kondisi). 7 mod 2 = 1 (tidak sesuai dengan kondisi).
Kondisi if (angka mod 2 = 0) ini sebenarnya digunakan
untuk memeriksa apakah sebuah angka termasuk genap atau tidak. Jika habis
dibagi 2 (sisanya 0), artinya angka tersebut merupakan bilangan genap.
Bagaimana dengan angka ganjil? Misalkan jika diinput sebuah angka, akan lebih baik hasilnya “Angka yang anda masukkan merupakan bilangan genap” atau “Angka yang anda masukkan merupakan bilangan ganjil”. Ini akan kita pelajari dalam tutorial selanjutnya, yakni tentang perintah percabangan dua kondisi IF then ELSE
0 komentar:
Posting Komentar
SILAHKAN TINGGALKAN KOMENTAR