Pascal : Percabangan (Program Control Bagian 1)
Dalam postingan kali ini, saya akan membahas beberapa hal yang paling penting dalam dunia pemrograman, yaitu percabangan/decision making menggunakan if-then dan case-of, serta looping yang saya rangkum dalam Program Control. Hal-hal yang dibahas pada topik ini merupakan hal yang general yang ada di setiap Bahasa Pemrograman, pastikan Anda cukup berlatih dan menguasai materi berikut ini. Jadi, pastikan Anda membaca topik seputar Programming Control ini secara menyeluruh dan mendalam. Namun karena bahasannya cukup panjang. Maka akan saya pecah bahasan Program Control ini menjadi beberapa bagian. Check this out! ^^
Decision making dalam bahasa Pascal terdiri dari :
if-then statement if-then-else statement nested if statements case-else statement, dan case statement nested case statements
PERCABANGAN-DECISION MAKING
1. If - Then Statement
If-Then Statement merupakan percabangan yang paling simple. Menggunakan ekspresi boolean dan logika untuk menyeleksi kondisi kemudian diikuti oleh satu atau beberapa statement lainnya.
Alur logika dari statement ini dapat digambarkan sebagai berikut :
sumber : www.tutorialspoint.com |
syntaxnya :
if (conditon) then (statement);
condition di sini adalah logika yang apabila nilainya valid maka statement selanjutnya dapat dieksekusi. Misalnya :
if (x>3) then writeln('Iya');
Apabila nilai x yang kita input lebih besar dari 3, maka program akan menampilkan 'Iya' ke layar. Contoh lainnya :
If (x==2) then x:=x+2;
Artinya apabila nilai x sama dengan dua maka x ditambahkan dengan dua. Kondisinya dapat kita ubah sesuai dengan kebutuhan dari program yang sedang kita buat. Saya tidak akan membahas tentang Operator Logika dan Ekspresi Boolean yang dipakai pada kondisi, untuk itu silahkan untuk membaca beberapa artikel tentang logika yang ada dalam Bahasa Pascal, seperti di sini.
Jika ingin mengeksekusi lebih dari satu statement, maka gunakan begin-end untuk membuatnya ke dalam satu blok (dibungkus). Contohnya
Jika ingin mengeksekusi lebih dari satu statement, maka gunakan begin-end untuk membuatnya ke dalam satu blok (dibungkus). Contohnya
If (x==2) then begin x:=x+1; jumlah:=jumlah+x; end;
2. If - Then - Else
Walaupun If-Then sangat simple, namun control dari percabangan yang dapat dihandle pun tidak terlalu banyak jenisnya. Pada If-Then statement, kita hanya memproses statement apabila kondisi yang ada valid. lalu bagaimana bila kita juga ingin memproses statement lainnya walaupun kondisi tidak valid? Pascal menyediakan percabangan berjenis If-Then-Else yang syntaxnya :
If (condition) then (statement1) else (statement2);
Implementasi :
If (x mod 2=1) then writeln('Ganjil') else writeln('Genap');
Perhatikan bahwa tidak ada semicolon ';' setelah statement pertama. Biasanya, untuk meningkatkan keterbacaan program, kita dapat menggunakan begin-end untuk membungkus statement. Namun yang harus diperhatikan adalah begin-end ini tidak boleh diberikan akhiran '.' karena titik setelah 'End' menandakan akhir dari program. Maka dapat diimplementasikan sebagai berikut :
If (x mod 2 = 1) then begin writeln('Ganjil'); end else begin writeln('Genap'); end;
Sebelum 'else', begin-end tidak diakhiri dengan semicolon, tapi untuk statement terakhir yang dibungkus dengan begin-end, menggunakan semicolon. Diagram alurnya dapat digambarkan sebagai berikut :
sumber : www.tutorialspoint.com |
3. Nested If
Nested If ini secara singkat dapat diibaratkan sebagai 'if di dalam if'. Terkadang setelah menyeleksi beberapa kondisi, kita perlu menyeleksinya lagi dengan lebih spesifik untuk mendapatkan hasil yang kita inginkan dan sesuai dengan program yang ingin kita buat. Contoh Syntaxnya :
if (condition1) then begin if (condition2) then begin statement1; end else begin statement2; end; end else begin statement3; end;
Syntax di atas adalah sebuah contoh, bentuk syntax nya dapat berubah sesuai dengan program dan kondisi yang kita buat. Namun perlu diperhatikan, contoh syntax di atas tidak akan sama dengan :
if (condition1) then begin statement1; end else begin if (condition2) then begin statement2; end else begin statement3; end; end;
Contoh penggunaan Nested if ini adalah, misalnya kita ingin membuat sebuah program yang dapat mengelompokkan apakah suatu bilangan termasuk ke dalam bilangan yang nilainya lebih besar dari 0 atau lebih kecil daripada 0. Setelah dilakukan seleksi oleh kondisi yang kita tetapkan tersebut, kita dapat menyaringnya kembali, misalnya untuk yang lebih besar dari 0, kita dapat mengelompokkannya lagi menjadi 'apakah bilangan tersebut ganjil' atau 'apakah bilangan tersebut termasuk bilangan genap' dengan cara mengimplementasi percabangan if-then sesuai kebutuhan. Bila bilangan lebih kecil dari 0 maka akan menuliskan 'Bilangan negatif' ke layar. Contoh penerapannya :
if (x > 0 ) then begin if (x mod 2 == 1 ) then begin writeln('Bilangan Ganjil'); end else writeln('Bilangan Genap'); end else begin writeln('Bilangan negatif'); end; end;
Bersambung.
Nice :3
BalasHapusartikelnya sangat membantu, tapi kalau bisa disertakan link but langsung ke bagian duanya.
BalasHapus