Anda di halaman 1dari 30

Seleksi Kondisi/

Percabangan
Algoritma dan Pemrograman
Week 5
2020
Jenis Aliran Kendali
dalam Pemrograman
 Aliran berurutan (sequence)
 Aliran pencabangan (seleksi kondisi):
 Digunakan untuk melakukan seleksi terhadap suatu kondisi tertentu.
Seleksi tersebut digunakan untuk memilih statement mana yang akan
dijalankan berdasarkan kondisi tersebut.
 Aliran perulangan (repetisi/iterasi/looping)
 Digunakan untuk mengulang statement
Seleksi Kondisi
 Dalam membuat algoritma adakalanya ditemukan suatu kasus
dimana ada suatu kondisi yang harus dipilih/diseleksi. Jika
kondisi tersebut benar, maka akan melakukan suatu proses
tertentu, dan jika kondisi tersebut salah, maka akan menjalankan
proses yang lain.
 Ada KONDISI yang harus dicek atau diseleksi BENAR/SALAH-
nya
Pernyataan Seleksi
Kondisi di C/C++
 if
 if-else
 If-else if-else if…..-else
 switch-case
IF
 Statement seleksi kondisi if digunakan ketika ada suatu struktur
algoritma seperti di bawah ini:
IF
 Format statement if adalah:

A atau B

if(boolean_expression) if(boolean_expression){
statement; statement;
statement;
statement;

}
IF
 Penulisan sintaks if seperti pada format A, digunakan jika
statement yang akan dijalankan ketika boolean expression
bernilai benar, hanya SATU STATEMENT saja
 Penulisan sintaks if seperti pada format B, digunakan jika
statement yang akan dijalankan ketika boolean expression
bernilai benar, ada LEBIH DARI SATU STATEMENT
CONTOH IF

Apakah bedanya
antara contoh di atas
dan di samping?
IF-ELSE
 Digunakan untuk kasus yang digambarkan pada
flowchart di bawah ini:
IF-ELSE
 Format statement if-else adalah:

A atau B

if(boolean_expression) if(boolean_expression){
statement; statement;
else statement;
statement; statement;

}else{
statement;
statement;
}
CONTOH

Apakah bedanya
antara contoh di atas
dan di samping?
Contoh
 Jika umur lebih besar dari 17 tahun, menampilkan “boleh
mengurus SIM”, kalau kurang dari 17 tahun “belum boleh
mengurus SIM”
IF-ELSE IF-ELSE
 Digunakan untuk kasus yang digambarkan pada
flowchart di bawah ini (lebih dari 2 kondisi):

Boolean
False
expression
1

True Boolean
False
Statement 1; expression 2
Statement 2; dst;
Statement 1;
True
Statement 2; dst;
Statement 1;
Statement 2; dst;
IF-ELSE IF-ELSE
 Format penulisannya:

if(boolean_expression_1){
statement;
}else if(boolean_expression_2){
statement;
}else if(boolean_expression_3){
statement;
}else{
statement;
}
CONTOH
IF-ELSE IF-ELSE
IF BERSARANG
(NESTED IF)
 Di dalam pernyataan IF terdapat pernyataan IF lagi.

if(boolean_expression){
if(boolean_expression){
statement;
}else{
statement;
}
}else{
if(boolean_expression){
statement;
}else{
statement;
}
}
 Pembayaran air minum PDAM :

 Tarif per m3 untuk 10 m3 pertama (1-10) : 2000


 Apabila m3 nya bernilai 8 m3= potongan 1000
 Apabila tidak = tdk ada potongan

 Tarif per m3 untuk 10 m3 kedua (11-20) : 3000


 Apabila m3 nya bernilai 13 m3= potongan 1500
 Apabila tidak = tdk ada potongan

 Tarif per m3 untuk 10 m3 ketiga (21-30) : 4000


 Apabila m3 nya bernilai 25 m3= potongan 2000
 Apabila tidak = tdk ada potongan

 Tarif per m3 untuk 10 m3 selanjutnya (31 keatas) : 5000


 Apabila m3 nya bernilai 50 m3= potongan 3000
 Apabila tidak = tdk ada potongan

 Pemakaian air kurang dari 10m3 dianggap 10m3

 Biaya administrasi bulanan : 10000

 Buatlah koding untuk menghitung biaya pembayaran PDAM


SWITCH-CASE
 switch-case, secara fungsi mirip dengan if-else, tetapi
berbeda cara penggunaan
 Secara lebih spesifik, switch-case digunakan untuk
menyeleksi nilai konstan yang mungkin untuk suatu ekspresi
SWITCH-CASE
switch(int_or_char_expression){
case constant1 : statement 1;
statement 2;
break;
case contant2 : statement 1;
statement 2;
break;
…..
default : statement 1;
statement 2;
}
Contoh
Contoh
SWITCH-CASE
 Hanya bisa digunakan untuk menyeleksi nilai int atau char
SWITCH-CASE
 default digunakan untuk memproses jika semua nilai konstan
yang di case-case sebelumnya tidak sesuai dengan nilai yang
diseleksi. Berfungsi seperti else di if-else. Default bersifat
opsional, artinya boleh tidak ditulis/tidak ada
 break digunakan untuk keluar dari blok switch-case. Jika
break tidak ada, maka setelah menjalankan statement dalam
suatu case, maka ia tidak langsung keluar, melainkan
melanjutkan statemtn di bawahnya.
Latihan 1
 Buat algoritma dan program untuk menghitung konversi suhu dari
Celcius ke suhu lain. Aturannya:
 Jika memilih ‘k’, maka suhu akan dikonversi dari Celcius ke Kelvin
 Jika ‘f’, maka suhu akan dikonversi dari Celcius ke Fahrenheit
 Jika ‘r’, maka suhu akan dikonversi dari Celcius ke Reamur
Latihan 2
 Buat program untuk mengecek apakah suatu bilangan yang
dimasukkan merupakan bilangan kelipatan 3 atau bukan !
Latihan 3
Buat programnya !
Latihan 4
 Pak A bekerjasama dengan Pak B, dengan sejumlah modal
yang disetorkan. Dari kerjasama tersebut Pak A akan
mendapatkan bagi hasil yang ditentukan dengan aturan di
bawah ini:
 modal > 1000  bagi hasil 10% dari keuntungan total
 modal >= 1000 dan modal < 5000  bagi hasil 12%
 modal > 5000  bagi hasil 15%
Buat algoritma dan program untuk mencari keuntungan bagi
hasil yang diterima oleh Pak A
Latihan 5
 Buatlah program dengan menggunakan switch-case :
 Pilihan yang dimasukkan adalah pilihan hari yaitu Senin – Minggu
(1-7)
 Apabila user memilih hari :
 1 : Tampilkan “Selamat Senin Semangat”
 2 : Tampilkan “Selasa selalu berasa sama”
 3 : Tampilkan “Rabu jangan jadi kelabu yaa”
 4 : Tampilkan “Orang manis tersenyum di hari Kamis”
 5 : Tampilkan “Thank God its Friday”
 6 : Tampilkan “Weekend, I’m coming..”
 7 : Tampilkan “Tidur seharian di hari Minggu”
 Selain 1-7, tampilkan : “Coba lagi, mungkin kamu kurang Piknik”
Latihan 6
 Buatlah program dengan menggunakan switch-case :
 Pilihan yang dimasukkan adalah pilihan hari yaitu Senin – Minggu
(1-7)
 Apabila user memilih hari :
 1 : Tampilkan “Selamat Senin Semangat”
 Jika user memasukkan inputan jam diatas jam 12, maka akan ditampilkan :
“udah senin siang aja nih”
 2 : Tampilkan “Selasa selalu berasa sama”
 Jika user memasukkan inputan jam diatas jam 12, maka akan ditampilkan :
“selasa udah semakin siang aja nih”
 3 : Tampilkan “Rabu jangan jadi kelabu yaa”
 Jika user memasukkan inputan jam diatas jam 12, maka akan ditampilkan :
“udah rabu siang aja nih, tetap semangat”
Latihan 6 (lanjutan)
 4 : Tampilkan “Orang manis tersenyum di hari Kamis”
 Jika user memasukkan inputan jam diatas jam 12, maka akan ditampilkan :
“kamis siang jangan lupa rehat sejenak”
 5 : Tampilkan “Thank God its Friday”
 Jika user memasukkan inputan jam diatas jam 12, maka akan ditampilkan :
“jumat siang siap-siap menyambut weekend”
 6 : Tampilkan “Weekend, I’m coming..”
 Jika user memasukkan inputan jam diatas jam 12, maka akan ditampilkan :
“sabtu siang enaknya kemana nih?”
 7 : Tampilkan “Tidur seharian di hari Minggu”
 Jika user memasukkan inputan jam diatas jam 12, maka akan ditampilkan :
“udah puas ni tidurnya, kuy liburan!”

 Selain 1-7, tampilkan : “Coba lagi, mungkin kamu kurang Piknik”

Anda mungkin juga menyukai