Nilai ekspresi kondisional a=x>100?0:1 Nilai akan ditetapkan baik 0 atau 1, tergantung apakah x lebih besar dari 100. Pernyataan tersebut dapat dinyatakan dalam pernyataan IF/ELSE sebagai berikut
if(x>100) a=0; else a=1; Program dibawah dapat digunakan untuk membantu seorang konsultan untuk menghitung biaya. Konsultasn tersebut meminta bayaran $ 50,00 per jam, tetapi minimum selama lima jam, jika kurang dari 5 jam maka tidak akan dibayar. Operator kondisional digunakan dalam pernyataan tersebut untuk memastikan bahwa jumlahnya tidak kurang atau dibawah lima. Untuk lebih jelasnya perhatikan program dibawah ini Program 5.19
#include<conio.h> #include<iostream> #include<iomanip> usingnamespacestd; intmain() { constdoublePAY_RATE=50.0; doublehours,charges; cout<<"Berapajamandabekerja?"; cin>>hours; hours=hours<5?5:hours;//Conditionaloperator charges=PAY_RATE*hours; cout<<fixed<<showpoint<<setprecision(2); cout<<"Besargajiandaadalah$"<<charges<<endl; getch(); return0; }
Program Output with Example Input Shown in Bold Berapajamandabekerja?5 Besargajiandaadalah$250.00
5.10. Statement SWITCH
Statement SWITCH juga berfungsi sama dengan IF. Perintah SWITCH sama dengan perintah CASE OF dalam PASCAL. Dimana sintaksnya menggunakan: switch(variabel) { casevalue1:statement1; break; casevalue2:statement2; break; .. default:statement;/*optional*/ break; }
Perhatikan contoh program menggunakan statement switch adalah sebagai berikut: Program 5.20
#include<conio.h> #include<iostream> usingnamespacestd; voidmain() { intbil; cout<<"Masukkanbilangan:"; cin>>bil switch(bil) { case1:cout<<"Andamemasukkanbil.satu"; break; case2:cout<<"Andamemasukkanbil.dua"; break; case3:cout<<"Andamemasukkanbil.tiga"; break; default:cout<<"Andamemasukkanbilselain1,2,dan3"; break; } }
Selanjutnya coba kalian hapus semua break program di atas dan kalian jalankan. Apa yang terjadi? Keanehan akan muncul. Mengapa ???????
Next read ON halaman 16.