PERTEMUAN 4 Penyeleksian kondisi Algoritma & Pemrograman Terstruktur PERTEMUAN 4 Penyeleksian kondisi
pendahuluan Pada umumnya, suatu permasalahan yang kompleks mengandung suatu penyeleksian kondisi atau dikatakan permasalahan tersebut memiliki beberapa alternatif pelaksanaan aksi. Dengan menyeleksi suatu kondisi, maka selanjutnya dapat ditentukan tindakan apa yang harus dilakukan, tergantung pada hasil kondisi yang diseleksi tersebut. Jadi suatu aksi hanya dikerjakan apabila persyaratan atau kondisi tertentu terpenuhi.
Penyeleksian satu kasus Notasi algoritmik untuk analisis penyeleksian satu kasus adalah dengan menggunakan struktur IF-THEN : if kondisi then aksi endif Kondisi akan diseleksi oleh statemen if * Bila kondisi bernilai benar (true) : aksi sesudah kata then (dapat berupa satu atau lebih aksi) akan diproses. * Bila kondisi bernilai salah (false) : tidak ada aksi apapun yang akan dikerjakan. Statemen endif adalah untuk mempertegas bagian awal dan bagian akhir struktur IF-THEN. benar IF kondisi salah Aksi
Contoh penyeleksian kondisi satu kasus [1] Contoh : Algoritma menentukan apakah sebuah bilangan bulat merupakan bilangan genap. Algoritma BILANGAN_GENAP {Menentukan apakah sebuah bilangan bulat yang dibaca dari piranti masukan merupakan bilangan genap} DEKLARASI : bil : integer DESKRIPSI read(bil) if bil mod 2 = 0 then write (‘bilangan genap’) endif benar Bil mod 2 = 0 ‘bilangan genap’ salah END
Contoh penyeleksian kondisi satu kasus [2] import java.util.Scanner; public class Kuliah41 { public static void main(String [] args) Scanner input = new Scanner(System.in); int a; System.out.print("Masukkan bilangan bulat : "); a=input.nextInt(); if (a%2 == 0) System.out.println("Bilangan tersebut genap"); }
Penyeleksian dua kasus Notasi algoritmik untuk analisis penyeleksian dua kasus adalah dengan menggunakan struktur IF-THEN-ELSE : if kondisi then aksi1 else aksi2 endif Dalam struktur IF-THEN-ELSE : Aksi1 akan dilaksanakan jika kondisi bernilai benar (true). Jika kondisi bernilai salah (false) maka aksi2 yang akan dilaksanakan Statemen else menyatakan ingkaran (negation) dari kondisi. benar IF Kondisi ? salah aksi1 aksi2
Contoh penyeleksian kondisi dua kasus [1] Contoh : Algoritma menentukan bilangan maksimum (terbesar) dari dua buah bilangan bulat. Algoritma MAKSIMUM {Menentukan bilangan terbesar dari dua bilangan bulat} DEKLARASI A, B : integer DESKRIPSI read (A, B) If A > B then write (‘Bilangan terbesar :’, A) else {B ≥ A} write (‘Bilangan terbesar :’,B) endif benar A > B Bilangan terbesar A salah Bilangan terbesar B END
Contoh penyeleksian kondisi dua kasus [2] import java.util.Scanner; public class Kuliah42 { public static void main(String [] args) Scanner input = new Scanner(System.in); int a,b; System.out.print("Masukkan Bilangan 1 : "); a=input.nextInt(); System.out.print("Masukkan Bilangan 2 : "); b=input.nextInt(); if (a>b) System.out.println("Bilangan terbesar : " +a); else System.out.println("Bilangan terbesar : " +b); }
Penyeleksian tiga kasus/lebih (tersarang) Notasi algoritmik untuk analisis penyeleksian tiga kasus atau lebih (tersarang) menggunakan struktur IF-THEN-ELSE, sebagaimana halnya pada masalah dengan dua kasus Tiga kasus : if kondisi1 then aksi1 else if kondisi2 then aksi2 aksi3 endif benar IF kondisi1 aksi1 salah benar IF kondisi2 aksi2 salah aksi3
penyeleksian benar IF kondisi1 aksi1 salah Empat kasus : if kondisi1 then aksi1 else if kondisi2 then aksi2 if kondisi3 then aksi3 aksi4 endif benar IF kondisi2 aksi2 salah benar IF kondisi3 aksi3 salah aksi4
import java.util.Scanner; public class Kuliah43 { public static void main(String [] args) Scanner input = new Scanner(System.in); double ip; System.out.print("IP Kumulatif : "); ip = input.nextDouble(); if (ip >= 2.00 && ip <= 2.75) System.out.println("Lulus memuaskan"); else if (ip > 2.75 && ip <= 3.50) System.out.println("Lulus sangat memuaskan"); if (ip > 3.50 && ip <= 4.00) System.out.println("Lulus dengan pujian"); System.out.println("Data IP tidak Valid"); }