Dua buah pernyataan yang dapat digunakan untuk penyeleksian kondisi antara lain pernyataan if dan pernyataan switch. Pernyataan-pernyataan penyeleksian kondisi digunakan untuk menyeleksi suatu kondisi atau syarat tertentu. Di mana dari hasil seleksi kondisi tersebut akan dihasilkan sebuah keputusan.
Bentuk if Tunggal
Sintak dari bentuk if tunggal adalah sebagai berikut:
if (kondisi) pernyataan;
Bentuk ini menunjukkan bahwa jika kondisi tersebut dipenuhi, maka pernyataan dalam if akan dijalankan, sebaliknya jika kondisi tersebut tidak dipenuhi maka pernyataan dalam if juga tidak akan dijalankan. Berikut ini contoh penggunaan bentuk if tunggal:
Contoh code :
#include <iostream.h> #include <stdlib.h> int main() { int jmlAnak; float gajiKotor, tunjangan,persenTunj=0.2; cout<<"Gaji kotor : "; cin >>gajiKotor; cout<<"Jumlah Anak :"; cin >>jmlAnak; if(jmlAnak>2) persenTunj=0.3; tunjangan = persenTunj*gajiKotor; cout<<"Besar Tunjangan : "<<tunjangan; system("PAUSE"); return 0; }
Bentuk if – else
Sintak dari bentuk if – else adalah sebagai berikut:
if (kondisi) pernyataan1; else pernyataan2;
Jika kondisi di dalam if dipenuhi, maka pernyataan1 dijalankan, sebaliknya jika kondisi if tidak dipenuhi maka pernyataan2 baru dijalankan.
Contoh code :
/*Program seleksi hasil pembagian*/ #include <iostream.h> #include <stdlib.h> int main() { float bil1,bil2; cout<<"Bilangan pertama : "; cin >>bil1; cout<<"Bilangan kedua : "; cin >>bil2; if(bil2==0) cout<<bil1<<" dibagi 0 hasilnya adalah tak hingga" <<endl; else cout<<bil1<<" dibagi "<<bil2<<" hasilnya adalah "<<bil1/bil2<<endl; system("PAUSE"); return 0; }
Bentuk if – else if - . . . – else
Penyeleksian akan dilakukan mulai dari kondisi yang pertama (kondisi1).
Jika kondisi ini dipenuhi maka pernyataan yang mengikutinya akan
dijalankan (pernyataan_1) dan seleksi kondisi dihentikan
(kondisi-kondisi yang lain tidak akan di periksa). Namun jika kondisi1
tidak dipenuhi maka seleksi kondisi langsung dilanjutkan ke kondisi2.
Jika kondisi2 dipenuhi maka pernyataan_2 dijalankan, namun jika tidak
maka seleksi dilanjutkan ke kondisi3. Begitu seterusnya. Jika semua
kondisi tidak ada yang bernilai benar maka pernyataan yang ada di else yang akan dijalankan. Bentuk else sendiri bersifat optional, dapat tidak digunakan
Bentuk ini disebut juga sebagai bentuk bertingkat. Sintak dari bentuk ini adalah sebagai berikut:
if(kondisi1) pernyataan_1; else if(kondisi2) pernyataan_2; else if(kondisi3) pernyataan_3; . . . else pernyataan_n;
Contoh code :
/*Program Seleksi Nilai*/ #include <iostream.h> #include <stdlib.h> int main() { int nilai; cout<<"Masukkan nilai ujian : "; cin >>nilai; if(nilai<=40) cout<<"Anda gagal"<<endl; else if(nilai<=60) cout<<"Anda mengulang"<<endl; else cout<<"Anda lulus"<<endl; system("PAUSE"); return 0; }
Bentuk if Bersarang
Kondisi yang akan diseleksi pertama kali adalah kondisi yang paling
luar yaitu kondisi_1. Jika kondisi_1 tidak dipenuhi, maka pernyataan
setelah else yang terluar (pasangan dari if yang bersangkutan) yang dijalankan. Jika else tidak
ditulis maka seleksi kondisi akan dihentikan. Jika kondisi ini dipenuhi
maka kondisi berikutnya yang lebih dalam (kondisi_2) yang akan
diseleksi. Jika kondisi_2 tidak dipenuhi maka pernyataan setelah else pasangan dari if(kondisi_2)
akan dijalankan. Namun jika kondisi_2 dipenuhi maka seleksi kondisi
akan dilanjutkan ke kondisi berikutnya yang lebih dalam. Begitu
seterusnya sampai dengan kondisi ke_n.
Bentuk ini merupakan bentuk pernyataan if di dalam pernyataan if yang lain. Sintaknya adalah sebagai berikut:
if(kondisi_1) if(kondisi_2) . . . . . . if(kondisi_n) pernyataan; else pernyataan; . . . . . . else pernyataan; else pernyataan;
Contoh code :
/*Program Seleksi Penerimaan Karyawan*/ #include <iostream.h> #include <stdlib.h> int main() { char jenkel; float ip; cout<<"Jenis Kelamin (L/P): "; cin >>jenkel; cout<<"Indeks Prestasi Kumulatif (IPK) : "; cin >>ip; if((jenkel=='l')||(jenkel=='L')) { if(ip<2.75) cout<<"Maaf anda tidak diterima!!"; else cout<<"Selamat!!anda masuk seleksi berikutnya!"; cout<<endl; } else if((jenkel=='p')||(jenkel=='P')) { if(ip<3.00) cout<<"Maaf anda tidak diterima!!"; else cout<<"Selamat!!anda masuk seleksi berikutnya!"; } else cout<<"Maaf kami belum bisa memproses data anda!!"; cout<<endl; system("PAUSE"); return 0; }
0 komentar:
Posting Komentar