Imam Fahrur Rozi
Algoritma dan Pemrograman
SELEKSI KONDISI
KOMPETENSI Setelah menempuh materi ini, mahasiswa hendaknya mampu: • Memahami tentang konsep seleksi kondisi • Memahami penggunaan IF-‐ELSE dan SWITCH-‐CASE untuk seleksi kondisi
JENIS ALIRAN KENDALI ² Aliran Berurutan (Sequence) ² Aliran Pencabangan atau Seleksi Kondisi (SelecOon atau CondiOonal SelecOon) ² Digunakan untuk melakukan seleksi terhadap suatu kondisi tertentu. Seleksi tersebut digunakan untuk memilih statement mana yang akan dijalankan berdasarkan kondisi tsb.
² Perulangan (RepeOOon atau IteraOon atau Looping) ² Digunakan untuk mengulang statement.
SELEKSI KONDISI ² Dalam membuat algoritma, adakalanya ditemukan kasus yang melibatkan suatu kondisi yang harus dipilih atau diseleksi. Jika suatu kondisi tersebut terpenuhi atau benar, maka akan melakukan suatu proses tertentu. Tapi jika salah, maka proses tsb Odak dijalankan, atau bahkan akan menjalankan proses yang lain. ² Ada KONDISI yang harus dicek atau diseleksi benar salahnya.
PERNYATAAN SELEKSI KONDISI ² Dalam C++ terdapat beberapa pernyataan untuk melakukan seleksi kondisi: ² if ² if – else ² switch – case
PERNYATAAN “IF” ² Dalam Flowchart :
PERNYATAAN “IF” ² Dalam C++ sintaks C++: A. if (boolean expression) statement; B. if (boolean expression) { statement; statement; ……… }
PERNYATAAN “IF” ² Penulisan sintaks “if” seperO pada A digunakan jika statement yang akan dijalankan keOka boolean expression bernilai benar, hanya SATU statement saja ² Penulisan “if” seperO B digunakan jika statement yang akan dijalankan keOka boolean expression bernilai benar, LEBIH DARI SATU statement.
PERNYATAAN “IF-‐ELSE” ² Penggambaran dalam Flowchart:
PERNYATAAN “IF-‐ELSE” ² Dalam C++ sintaks C++: A.
if (boolean expression) statement; else statement; B. if (boolean expression){ statement; statement; ……… }else{ statement; statement; ……… }
CONTOH “IF” #include
#include
int main(){ int x; cin>>x; if(x == 100) cout<<“x is 100”; return 0; }
int main(){ int x; cin>>x; if(x == 100){ cout<<“x is ”; cout<<x; } return 0; }
CONTOH “IF-‐ELSE” #include
#include
int main(){ int main(){ int x; int x; cin>>x; cin>>x; if(x == 100) if(x == 100){ cout<<“x is 100”; cout<<“x is ”; else cout<<x; cout<<“x is not 100”; }else{ return 0; cout<<“x is not ”; } cout<<x; } return 0; }
PERNYATAAN “IF-‐ELSE” ² “If-‐Else” jika digunakan untuk menyeleksi lebih dari dua kondisi menjadi if (boolean expression 1){ statement; ……… }else if(boolean expression 2){ statement; ……… } else if(boolean expression 3){ statement; ……… }else{ statement; ……… }
CONTOH “IF-‐ELSE IF-‐ELSE” #include int main(){ int x; cin>>x; if(x > 0){ cout<<“x is positive”; }else if(x<0){ cout<<“x is negative”; }else{ cout<<“x is 0”; } return 0; }
PERNYATAAN “IF BERSARANG (NESTED IF)” ² Di dalam pernyataan IF terdapat pernyataan IF lagi ² Pernyataan IF yang ada di dalam IF, berada pada level yang berbeda if(boolean expression) { if(boolean expression){ …… }else if(boolean expression){ …… }else{ …… } }else{ …… }
PERNYATAAN “SWITCH CASE” ² “Switch-‐case” secara fungsi mirip dengan “If-‐Else”, tapi berbeda pada cara penggunaan ² “Switch-‐case” secara lebih spesifik digunakan untuk menyeleksi nilai konstan yang mungkin untuk suatu ekspresi
PERNYATAAN “SWITCH CASE” switch(int or char expression){ case constant1 : statement1; statement2; break; case constant2 : statement1; statement2; break; … [default: statement1; statement2;] }
CONTOH “SWITCH CASE” int x; cin>>x; switch(x){ case 1: cout<<“Satu”; break; case 2: cout<<“Dua”; break; case 3: cout<<“Tiga”; break; default: cout<<“Selain satu,dua,tiga”; }
CONTOH “SWITCH CASE” char x; cin>>x; switch(x){ case ‘a’: cout<<“huruf break; case ‘b’: cout<<“huruf break; case ‘c’: cout<<“huruf break; default: cout<<“Selain }
a”; b”; c”; huruf a,b,c”;
PERNYATAAN “SWITCH CASE” ² “Switch-‐case” hanya bisa digunakan untuk menyeleksi nilai int atau char. Tidak bisa selain itu. int x; switch(x){ …dst…. }
BENAR
char x; switch(x){ …dst…. }
BENAR
float x; switch(x){ …dst…. }
SALAH
PERNYATAAN “SWITCH CASE” ² Ekspresi “default” dalam “switch-‐case” digunakan untuk memproses jika semua nilai konstan yang ada di case2 sebelumnya Odak sesuai dengan nilai yang di cek ² Befungsi seperO “else” pada “if-‐else” ² Ekspresi “default” ini bersifat opsional atau bukan mandatory atau Odak harus ada (bileh ada boleh Odak). ² Statement “break” digunakan untuk keluar dari blok “switch-‐case”. ² Statement “break” biasa diletakkan pada akhir blok statement yang ada di dalam case. ² Jika Odak dicantumkan “break”, maka setelah menjalankan ekspresi case, Odak langsung keluar, melainkan menjalankan sintaks di bawahnya.
CONTOH “SWITCH CASE” TANPA “BREAK” char x; cin>>x; switch(x){ case ‘a’: cout<<“huruf case ‘b’: cout<<“huruf break; case ‘c’: cout<<“huruf break; default: cout<<“Selain } Jika x=‘a’ maka outputnya adalah: huruf a huruf b
a”<<endl; b”<<endl; c”<<endl; huruf a,b,c”;
Algoritma dan Pemrograman
Selamat Belajar
JJJJJJJJJ
Serious, Focus, stay cool & calm