Bu Naim Dasprog - Pertemuan 3 Kondisional 2
-
Upload
umar-al-faruq -
Category
Education
-
view
184 -
download
0
description
Transcript of Bu Naim Dasprog - Pertemuan 3 Kondisional 2
KONDISIONALKONDISIONAL
Kondisi ifKondisi if
Kondisi if memeriksa apakah suatu kondisi dinyatakan Kondisi if memeriksa apakah suatu kondisi dinyatakan benar (benar (truetrue).).
Kondisi merupakan suatu operasi logika. Kondisi merupakan suatu operasi logika.
Jika kondisi bernilai Jika kondisi bernilai truetrue maka program akan melakukan maka program akan melakukan suatu pernyataan yang telah ditentukan untuk kondisi suatu pernyataan yang telah ditentukan untuk kondisi tersebut.tersebut.
Proses A
Benar
STRUKTUR KONDISI IFSTRUKTUR KONDISI IF Bentuk umum dari kodisi if adalah:Bentuk umum dari kodisi if adalah:
iif (kondisi) pernyataanf (kondisi) pernyataan
Contoh:Contoh:
1. if(harga>100000)1. if(harga>100000)discount = harga * 0.1;discount = harga * 0.1;
2. 2. iif((x>0) && (x<20))f((x>0) && (x<20)){{
y = x * 10;y = x * 10; z = y + 25;z = y + 25;
}}
Contoh 1Contoh 1void main()void main(){{
int Num1, Num2;int Num1, Num2;
printf(“masukkan nilai 1:”);printf(“masukkan nilai 1:”);scanf(“%d”, &Num1);scanf(“%d”, &Num1);printf(“masukkan nilai 2:”);printf(“masukkan nilai 2:”);scanf(“%d”, &Num2);scanf(“%d”, &Num2);
if(Num1>Num2)if(Num1>Num2) printf(“\n%d+%d = %d\n\n”, Num1, Num2, printf(“\n%d+%d = %d\n\n”, Num1, Num2, Num1+Num2);Num1+Num2);
}}
Contoh 2Contoh 2void main()void main(){{
int Num1, Num2;int Num1, Num2;
printf(“masukkan nilai 1:”);printf(“masukkan nilai 1:”);scanf(“%d”, &Num1);scanf(“%d”, &Num1);printf(“masukkan nilai 2:”);printf(“masukkan nilai 2:”);scanf(“%d”, &Num2);scanf(“%d”, &Num2);
if(Num1if(Num1<<Num2)Num2)printf(“%d lebih kecil dari %d\n\n”, Num1, Num2);printf(“%d lebih kecil dari %d\n\n”, Num1, Num2);
if(Num1==Num2)if(Num1==Num2)printf(“%d sama dengan %d\n\n”, Num1, Num2);printf(“%d sama dengan %d\n\n”, Num1, Num2);
if(Num1>Num2)if(Num1>Num2)printf(“%d lebih besar dari %d\n\n”, Num1, Num2);printf(“%d lebih besar dari %d\n\n”, Num1, Num2);
}}
Contoh 3Contoh 3void main()void main(){{ char c;char c;
printf(“ketikkan sebuah huruf:”);printf(“ketikkan sebuah huruf:”);scanf(“%c”, &c);scanf(“%c”, &c);
if(c==’a’||c=if(c==’a’||c===’e’||c==’i’ ||c=’e’||c==’i’ ||c===’o’||c==’u’)’o’||c==’u’)printf(“anda mengetik huruf vokal”);printf(“anda mengetik huruf vokal”);
}}
LatihanLatihan
Tulislah sebuah program yang Tulislah sebuah program yang membandingkan dua bilangan integer membandingkan dua bilangan integer yang dimasukan oleh pemakai dan yang dimasukan oleh pemakai dan mengeluarkan pesan bilangan mana yang mengeluarkan pesan bilangan mana yang lebih kecil.lebih kecil.
Tulislah sebuah program untuk membagi Tulislah sebuah program untuk membagi dua bilangan integer yang dimasukkan dua bilangan integer yang dimasukkan oleh pemakai. Tampilkan pesan tidak oleh pemakai. Tampilkan pesan tidak dapat dibagi nol jika bilangan yang kedua dapat dibagi nol jika bilangan yang kedua sama dengan nol.sama dengan nol.
Kondisi if - elseKondisi if - else
Bentuk umum:Bentuk umum: if(kondisi) pernyataan1 else pernyataan 2if(kondisi) pernyataan1 else pernyataan 2
Jika kondisi bernilai Jika kondisi bernilai truetrue, sistem mengeksekusi , sistem mengeksekusi pernyataan 1. Jika kondisi bernilai pernyataan 1. Jika kondisi bernilai falsefalse sistem sistem akan mengeksekusi pernyataan 2akan mengeksekusi pernyataan 2
Proses B Proses A
BenarSalah
ContohContoh
void main()void main(){{
char c;char c;
printf(“ketikkan sebuah huruf:”);printf(“ketikkan sebuah huruf:”);scanf(“%c”,&c);scanf(“%c”,&c);
if(c==’a’||c=’if(c==’a’||c=’==e’||c==’i’ ||c=e’||c==’i’ ||c===’o’||c==’u’)’o’||c==’u’)printf(“anda mengetik huruf vokal\n\n”);printf(“anda mengetik huruf vokal\n\n”);
elseelseprintf(“bukan huruf vokal\n\n”);printf(“bukan huruf vokal\n\n”);
} }
Kondisi if else bertingkatKondisi if else bertingkat
if(tes1)if(tes1){ if(tes2){ if(tes2)
{ if (tes3){ if (tes3){…}{…}
}}elseelse {…………………}{…………………}
}}elseelse
{………………}{………………}
Proses A
Benar Salah
ContohContohvoid main()void main(){{
int Ultah = 13;int Ultah = 13;int tebak;int tebak;
printf(“tebak tanggal lahir dari 1 sampai 31\n”);printf(“tebak tanggal lahir dari 1 sampai 31\n”);printf(“masukkan tebakan anda : “);printf(“masukkan tebakan anda : “);scanf(“%d”,&tebak);scanf(“%d”,&tebak);if (tebak<0)if (tebak<0)
printf(“tanggal tidak negatif”);printf(“tanggal tidak negatif”);else if(tebak>31)else if(tebak>31)
printf(“tidak ada tanggal diatas 31\n”);printf(“tidak ada tanggal diatas 31\n”);else else { if(tebak==ultah){ if(tebak==ultah)
printf(“anda benar”);printf(“anda benar”); else if(tebak<ultah)else if(tebak<ultah)
printf(“tebakan terlalu rendah”);printf(“tebakan terlalu rendah”); else else
printf(“tebakan terlalu tinggi”);printf(“tebakan terlalu tinggi”);}}
}}
LatihanLatihan
Buat Program untuk mencari nilai terbesar Buat Program untuk mencari nilai terbesar dari 3 bilangan yang dimasukkan.dari 3 bilangan yang dimasukkan.
Tulislah sebuah program untuk membagi Tulislah sebuah program untuk membagi dua bilangan integer yang dimasukkan dua bilangan integer yang dimasukkan oleh pemakai. Tampilkan pesan tidak oleh pemakai. Tampilkan pesan tidak dapat dibagi nol jika bilangan yang kedua dapat dibagi nol jika bilangan yang kedua sama dengan nol. Tampilkan hasil sama dengan nol. Tampilkan hasil pembagian jika bilangan kedua tidak sama pembagian jika bilangan kedua tidak sama nol.nol.
SwitchSwitch
multiway
expression
value1
action 1
value2
action 2
value3
action 3
value4
action 4
STRUKTUR KONDISI SWITCHSTRUKTUR KONDISI SWITCH
switch(ekspresi){
case……..: pernyataan; break;
case……..: pernyataan; break;
case……..: pernyataan; break;
.
.default: pernyataan; //pilihan
}
Aturan SwitchAturan Switch
Label pada Label pada casecase harus berupa konstanta. harus berupa konstanta. Konstanta pada label case berupa integer Konstanta pada label case berupa integer
atau karakter.atau karakter. Tidak boleh terdapat 2 Tidak boleh terdapat 2 casecase yang yang
mempunyai nilai label sama. mempunyai nilai label sama. Dua label Dua label casecase dapat melakukan perintah dapat melakukan perintah
yang sama. yang sama. defaultdefault tidak harus ada. tidak harus ada. defaultdefault hanya satu dan diletakkan pada hanya satu dan diletakkan pada
akhir pilihan. akhir pilihan.
action
action
action
action
case 1
case 2
case 3
default
Contoh 1Contoh 1void main()void main(){{
int angka;int angka;printf(“tulis angka antara 1 sampai 5:”);printf(“tulis angka antara 1 sampai 5:”);scanf(“%d”, &angka);scanf(“%d”, &angka);switch(angka)switch(angka){ { case 1: printf(“anda menuliskan angka %d”, angka);case 1: printf(“anda menuliskan angka %d”, angka); break;break; case 2: printf(“anda menuliskan angka %d”, angka);case 2: printf(“anda menuliskan angka %d”, angka); break;break;
case 3: printf(“anda menuliskan angka %d”, angka);case 3: printf(“anda menuliskan angka %d”, angka); break;break;
case 4: printf(“anda menuliskan angka %d”, angka);case 4: printf(“anda menuliskan angka %d”, angka); break; break;
case 5: printf(“anda menuliskan angka %d”, angka);case 5: printf(“anda menuliskan angka %d”, angka); break;break;
default:default:printf(“%d tidak antara 1 sampai 5”,angka);printf(“%d tidak antara 1 sampai 5”,angka);
}}}}
Contoh 2Contoh 2
char char1;char char1;char1 = char1 = ggetetcche();he();switch (char1)switch (char1){ case 'a': { case 'a':
case 'A': ProcessChoiceA(); case 'A': ProcessChoiceA(); break; break;
case 'b': case 'b': case 'B': ProcessChoiceB(); case 'B': ProcessChoiceB();
break; break; case 'q': case 'q': case 'Q': ProcessChoiceQ(); case 'Q': ProcessChoiceQ();
break; break; default: cout << "Not a valid choice\n"; default: cout << "Not a valid choice\n";
}}
Contoh 3Contoh 3
switchswitch((intint(score)/10){(score)/10){case case 10:10:case case 9:9: cout << "Grade = A" << endl;cout << "Grade = A" << endl;case case 8:8: cout << "Grade = B" << endl;cout << "Grade = B" << endl;case case 7:7: cout << "Grade = C" << endl;cout << "Grade = C" << endl;case case 6:6: cout << "Grade = D" << endl;cout << "Grade = D" << endl;default:default:cout << "Grade = F" << endl;cout << "Grade = F" << endl;
}}
switch dan if-elseswitch dan if-else
switchswitch
switchswitch((intint(score)/10){(score)/10){case case 10:10:case case 9:9: cout<<"Grade = A";cout<<"Grade = A";
breakbreak;;case case 8:8: cout<<"Grade = B";cout<<"Grade = B";
breakbreak;;case case 7:7: cout<<"Grade = C";cout<<"Grade = C";
breakbreak;;case case 6:6: cout<<"Grade = D";cout<<"Grade = D";
breakbreak;;default:default:cout<<"Grade = F";cout<<"Grade = F";}}
if-elseif-else
ifif (score >= 90) (score >= 90) cout << "Grade = A";cout << "Grade = A";else ifelse if (score >= 80) (score >= 80) cout << "Grade = B";cout << "Grade = B";else ifelse if (score >= 70) (score >= 70) cout << "Grade = C";cout << "Grade = C";else ifelse if (score >= 60) (score >= 60) cout << "Grade = D";cout << "Grade = D";elseelse // score < 59// score < 59 cout << "Grade = F";cout << "Grade = F";