Kondisi Pemilihan IF Satu Kasus / Dua Kasus / Tiga Kasus Dan Nested IF Pascal
ilmuit.id - Dalam pembuatan sebuah program, ada kondisi dimana kita butuh suatu kondisi pemilihan, Kondisi ini kadang dikarenakan suatu syarat tententu mengharuskan kita untuk melakukan pemilihan, oleh karena itu dibutuhkan kondisi percabangan jika sebuah kondisi terpenuhi dan bernilai true atau benar akan dieksekusi perintah pertama, Jika bernilai false atau salah maka maka akan dieksekusi perintah alternatif lainya.
Penjelasan gambar diatas adalah sebuah flowchart dimana ada A ( Decision ) adalah proses pemilihan sebuah kondisi, Dimana jika sebuah proses pemilihan menghasilkan nilai TRUE maka proses akan mengalir ke B dan proses berakhir dan jika sebuah proses menghasilkan nilai false maka aliran akan memilih proses C dan ke proses berakhir.
Kondisi Pemilihan Satu Kasus ( IF Satu Kasus)
If satu kasus merupakan bentuk paling sederhana dalam pemilihan yang melibatkan sebuah kondisi pemeriksaan. jika kondisi bernilai benar maka program akan menjalankan perintah yang berada dalam blok, jika bernilai salah maka program akan mengabaikan statement di dalam blok dan akan melanjutkan ke kode berikutnya di bawah kode pemilihan.
Format Umum Penulisan IF :
{ jika hanya satu statement }
if ( expresi ) then
statement;
{ jika mempunyai statement lebih dari satu }
if ( expresi ) then
begin
statement ;
statement ;
statement ;
statement ;
...
end;
if ( expresi ) then
statement;
{ jika mempunyai statement lebih dari satu }
if ( expresi ) then
begin
statement ;
statement ;
statement ;
statement ;
...
end;
Contoh Program Pascal IF satu kondisi :
Penjelasan :
Pembuatan perogram pemilihan didalam pascal menggunakan perintah : IF ( kondisi ) THEN
IF bisa diartikan jika. kondisi adalah proses menghasilkan sebuah hasil TRUE atau FALSE.
THEN setelah perintah then maka akan di eksekusi baris statement.
IF (angka > 5) artinya saya ingin memeriksa apakah nilai dari variabel “angka” lebih besar dari 5. Jika Benar, kondisi tersebut akan menghasilkan nilai TRUE. maka, kode program writeln(‘Variabel “angka” lebih besar dari 5’) akan di eksekusi. Jika kondisi menghasilkan nilai false maka tidak ada statement yang dieksekusi .
Fungsi ( begin - end; ) didalam kondisi if :
Fungsi begin -end; didalam kondisi IF adalah menunjukan statement yang akan di eksekusi hanya bagian yang didalam blok ( begin ) sampai ( end; ) didalam kondisi if.
Contoh program dibawah ini akan menunjukan kerancuna jika tidak menggunakan bloh begin dan end; didalam kondisi if :
Gambar diatas adalah contoh if jika tidak menggunakan blok BEGIN dan END didalam kondisi if , yang menjadi pertanyaan baris manakah dari perintah writeln (); yang menjadi bagian dari kondisi if dan apakah writeln() ke dua , tiga , empat juga merupakan bagian dari if dan akan di eksekusi
Jawabanya dalah kondisi diatas yang merupakan bagian dari kondisi if hanyalah
writeln ( ' baris1, variabel "angka " lebih besar dari 5 );
dari baris sedudah writeln pertama tidak termasuk blok if atau dengan kata lain tidak akan di eksekusi atau di jalankan.
Kondisi Pemilihan IF THEN ELSE dalam Pascal
Percabangan kondisi IF THEN ELSE adalah bentuk pemilihan dua kasus dari kondisi IF THEN yang hanya satu kasus. Perintah ELSE digunakan menjalankan kode program apabila sebuah kondisi atau pemilihan jika tidak terpenuhi.
Contoh dasar dari percabangan IF THEN ELSE dalam bahasa pemrogram pascal adalah sebagai berikut:
- Pada awal kode program dibuat variabel angka dan diisi dengan nilai 4 (integer).
- Kemudian memeriksa sebuah kondisi if (angka > 5), jika hasilnya TRUE yang artinya isi variabel angka besar dari 5, akan dijalankan writeln( 'Variabel "angka" lebih besar dari 5').
- Tapi jika kondisi if (angka > 5) menghasilkan nilai FALSE, yang akan dijalankan adalah writeln('ariabel “angka” lebih kecil dari 5’).
- Satu hal yang harus diperhatikan, penutup block sebelum perintah ELSE tidak boleh ada titik koma “ ; ” . Yang kita tulis harus end else, bukan end; else. contoh sperti gamabr di bawah :
Penjelasan dari program diatas adalah sebagai berikut :
- Jika isi dari variabel angka habis dibagi 2, yakni hasil dari kondisi if (angka mod 2 = 0),
jalankan perintah writeln ('Angka yang anda masukkan merupakan bilangan genap').
- Selain itu, pasti angka ganjil, sehingga yang akan dijalankan adalah writeln('Angka yang anda masukkan merupakan bilangan ganjil').
- Jika isi dari variabel angka habis dibagi 2, yakni hasil dari kondisi if (angka mod 2 = 0),
jalankan perintah writeln ('Angka yang anda masukkan merupakan bilangan genap').
- Selain itu, pasti angka ganjil, sehingga yang akan dijalankan adalah writeln('Angka yang anda masukkan merupakan bilangan ganjil').
Kondisi Pemilihan IF Majemuk ( IF Lebih Dari Dua Kondisi )
Pascal tidak membatasi sampai berapa tingkatan berapa if didalam kondisi tergantung dari seberapa perlunya tingkatan di kondisi seperti conth kasus
Program nilai mahasiswa membutuhkan banyak kondisi untuk melakukan pemeriksaan nilai jika nilai angka inputan sesuai dengan kondisi pemeriksaan maka akan keluar grade yang telah di tentukan Misal
Nilai A Syarat ( angka <= 100 );
Nilai B Syarat ( angka <= 80 );
Nilai C syarat (angka <=70 );
dll...
Dibawah ini contoh program sederhana untuk mendapatkan grade nilai mahasiswa A / B / C/ D :
Penjelasan program diatas adalah sebagai berikut :
Nilai mahasiswa diatas disimpan didalam variabel angka dimana ada beberapa kondisi perbandingan menggunakan operator relasional
- IF ( angka <= 50 ) then ( memeriksa variable angka apakah nilainya <= 50 jika nilainya true perintah writeln (' nilai ujian ', angka , ' bernilai D '); akan di tampilkan atau di jalankan.
- IF ( angka <= 60 ) then ( memeriksa variable angka apakah nilainya <= 60 jika nilainya true perintah writeln (' nilai ujian ', angka , ' bernilai C '); akan di tampilkan atau di jalankan.
- IF ( angka <= 70 ) then ( memeriksa variable angka apakah nilainya <= 70 jika nilainya true perintah writeln (' nilai ujian ', angka , ' bernilai B '); akan di tampilkan atau di jalankan.
- IF ( angka <= 80 ) then ( memeriksa variable angka apakah nilainya <= 80 jika nilainya true perintah writeln (' nilai ujian ', angka , ' bernilai B+ '); akan di tampilkan atau di jalankan.
- IF ( angka <= 100 ) then ( memeriksa variable angka apakah nilainya <= 100 jika nilainya true perintah writeln (' nilai ujian ', angka , ' bernilai A '); akan di tampilkan atau di jalankan.
Kondisi IF Bersarang ( Nested IF )
Pemilihan Kondisi IF bersarang atau dikenal Dengan Nested IF adalah penggunaan struktur IF di dalam IF. Kondisi Nested if digunakan untuk kode program yang sudah sudah mulai kompleks.
Contoh Kode Program Nested IF dalam Pascal :
Sebuah program dengan input angka (integer), kemudian memreiksa menginformasikan apakah angka itu angka genap atau ganjil, dan apakah angka itu besar atau kecil dari 10.
Dapatkah anda merancang kode programnya? Tentunya dengan menggunakan konsep nested IF.
Disini terdapat 2 kondisi dengan 4 kemungkinan:
- Angka genap dan besar dari 10
- Angka genap dan kecil dari 10
- Angka ganjil dan besar dari 10
- Angka ganjil dan kecil dari 10
Contoh Program Nested IF Sederhana :
Penjelasan program diatas :
- IF ( angka MOD 2 = 0 ) then { Sebuah variabel angka yang menampung nilai akan di periksa kondisi pertama adalah menentukan apakah angka bernilai genap atau ganjil , jika bernilai true maka angka adalah sebuah bilangan genap.
- Kemudian angkaa kan diperiksa lagi apakah nilai didalam angka mempunyai nilai lebih besar dari 10 atau lebih kecil dari 10 dan kemudian akan tampil aouput berdasarkan kondisi.
- Jika pada kondisi pemeriksaan pertama angka bernilai false maka blok ELSE akan di eksekusi disini menyatakan bahwa nilai angka bernilai ganjil, dan kemudian dilakukan pemeriksaan kembali di dalam blok else apakah angka mempunyai nilai lebih besar dari 10 atau lebih kecil dari 10.
Merubah Penggunaan Nested IF dengan Operator Logika / Boolean
Program nested if diatas dapat pula menggunakan Operator Boolean, lalu kita dapat mengubah nested IF menjadi IF “biasa” dengan bantuan operator logika AND.
Contoh program pada :
Penjelasan kode diatas adalah sebagai berikut :
- variabel angka akan diperiksa 4 kali.
- Pertama if (angka mod 2 = 0) ? Tidak.
- Program lanjut ke bagian ELSE IF kedua: if (angka mod 2 = 0) ? Juga tidak,
- lanjut ke ELSE IF ketiga: if (angka mod 2 <> 0)? Betul. Kali ini program akan masuk ke kondisi (angka > 10)? Tidak.
- Sehingga akan dijalankan ELSE terakhir: if (angka mod 2 <> 0) and (angka < 10) ? Benar.
dilihat dari efisiensi pengunaan nested if dalam kondisi program diatas lebih efisien dari pengunaan program menggunakan operator boolean, jika menggunakan kode program if hanya ada du kali pemeriksaan.
Tetapi semua tergantung kondisi dan situasi dan program apa yang sedang dibuat . jika ada yang belum pahan tentang operator bisa baca link dibawah
Baca Juga : Operator Dalam Bahasa Pemrograman Pascal
***
Nah sahabat semua Itulah pembahasan mengenai Kondisi Pemilihan IF Satu Kasus / Dua Kasus / Tiga Kasus Dan Nested IF Pascal semoga informasi diatas bermanfaat bagi yang sedang belajar pemrograman pascal terimakasih - ilmuit.id