Percabangan
Percabangan
Dalam kasus tertentu, sekumpulan statement dalam algoritma akan dilakukan ketika memenuhi sebuah kondisi tertentu Ex kasus:
Menerima sebuah bilangan dalam range tertentu (misal 1..10). Komputer akan memberi informasi salah jika bilangan di luar range point : informasi salah akan diberikan komputer jika bilangan ada di luar range
5/19/2013
Beberapa kumpulan statement bersifat saling independent, dan hanya satu dari kumpulan statement yang akan dilakukan, tergantung kondisinya Ex kasus:
menentukan apakah sebuah bilangan bulat masuk ke dalam bilangan genap atau ganjil point: Ada 2 output, genap & ganjl, hanya satu yang akan dilakukan, tergantung nilai bilangan bulatnya
5/19/2013
Menentukan bentuk air (padat, gas, cair), jika diketahui suhu air dalam C. point : output ada 3, padat, gas, cair. Masing-masing bersifat independen. Jika diketahui suhu air, maka salahsatu output akan diberikan.
5/19/2013
Memecah sebuah problem ke dalam subproblem yang lebih kecil Masing-masing sub-problem memiliki penyelesaian sendiri Mendefinisikan:
Kondisi, berupa suatu ekspresi logika yang menghasilkan true atau false aksi yang dilakukan karena sebuah kondisi terpenuhi
5/19/2013
5/19/2013
Program Menentukan_bilangan
{Menentukan bilangan, masuk dalam range 1..10 atau tidak, menggunakan statement depend-on}
{masukkan bilangan}
5/19/2013
Program Menentukan_bentuk_air
{Menentukan bentuk air jika diketahui suhu air dalam C. Menggunakan statement depend-on}
{suhu dalam C}
depend on T < 0 : output("bentuk padat") (T>0) and (T<100): output("bentuk cair") T > 100 : output("bentuk gas")
5/19/2013
Program Menentukan_bentuk_air
{Menentukan bentuk air jika diketahui suhu air dalam C. Menggunakan statement depend-on dengan else}
{suhu dalam C}
depend on T < 0 : output("bentuk padat") (T>0) and (T<100): output("bentuk cair") else : output("bentuk gas")
5/19/2013
Program Menentukan_genap_ganjil
{Menentukan apakah sebuah bilangan bulat adl genap/ganjil. Menggunakan statement depend-on}
Kamus m : integer
Algoritma input(m)
{Mencetak genap/ganjil}
5/19/2013
10
Keterangan: <kondisi> : dalam bentuk ekspresi logika cocok untuk kasus 1 aksi atau kumpulan statement
5/19/2013
11
Program Mengoreksi_range_input
{Memberi informasi salah jika bilangan yang diinputkan di luar range 1..10. Menggunakan statement if-then}
5/19/2013
12
if <kondisi 1> then <aksi 1> else {not kondisi} <aksi 2>
Keterangan: <kondisi> : dalam bentuk ekspresi logika cocok untuk kasus 2 aksi atau kumpulan statement
5/19/2013
13
if <kondisi 1> then <aksi 1> else if <kondisi 2> then <aksi 2> else ... if <kondisi n> then <aksi n> else <aksi n+1>
sarang 1
sarang 2
sarang n
5/19/2013
14
Program Menentukan_bentuk_air3
{Menentukan bentuk air jika diketahui suhu air dalam C. Menggunakan statement if-then-else}
{suhu dalam C}
if (T < 0) then output("bentuk padat") else if (T>0) and (T<100) then output("bentuk cair") else output("bentuk gas")
5/19/2013
15
Program Menentukan_bentuk_air3
{Menentukan bentuk air jika diketahui suhu air dalam C. Menggunakan statement if-then-else}
{suhu dalam C}
if (T < 0) then output("bentuk padat") else if (T<100) then output("bentuk cair") else output("bentuk gas")
5/19/2013
16
Ada sebuah perusahaan dengan dua tipe pegawai. Yang pertama Pegawai tetap, yang kedua pegawai tidak tetap. Pegawai tetap yang masa kerjanya > 50 tahun dapat bonus 500.000. Yang < 50 dapat bonus 400.000. Untuk pegawai tidak tetap yang masa kerjanya > 50 tahun akan dapat bonus 300.000, dan yang <50 akan dapat bonus 250.000. Buat algoritma programnya menggunakan skema percabangan.
Nama Mata Kuliah 5/19/2013 17
5/19/2013
18