{Pertemuan 4
Struktur Kondisi IF}
Outline
Struktur Kondisi IF
Struktur Kondisi IF…ELSE
Struktur Kondisi IF Bertingkat (Nested-IF)
Masih ingat dengan Latihan ini?
1. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara
ketiganya (dianggap ketiga bilangan nilainya berbeda). TIDAK BOLEH MENGGUNAKAN OPERATOR LOGIKA
2. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara ketiganya (dianggap ketiga bilangan nilainya berbeda).
BOLEH MENGGUNAKAN OPERATOR LOGIKA
Soal Pertama
1. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara
ketiganya (dianggap ketiga bilangan nilainya berbeda). TIDAK BOLEH MENGGUNAKAN OPERATOR LOGIKA
Pahami soal / kasusnya terlebih dahulu.
•
Apakah perlu ada inputan?
•
Berapa nilai yang harus diinput?
•
Apa jenis / tipe data dari nilai yang diinput?
•
Apa yang diminta untuk ditampilkan?
Soal Pertama
1. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara
ketiganya (dianggap ketiga bilangan nilainya berbeda). TIDAK BOLEH MENGGUNAKAN OPERATOR LOGIKA
Alur algoritma / logika berpikir
• Deklarasi variabel A, B, C
• Input nilai A, B, C
• Jika A > B, maka A adalah kandidat TERBESAR
• Jika A > C, maka A sudah pasti adalah TERBESAR
• Jika C > A, maka C sudah pasti adalah TERBESAR
• Jika B > A, maka B adalah kandidat TERBESAR
• Jika B > C, maka B sudah pasti adalah TERBESAR
Ingat kembali: Operator
Perbandingan
Operat or
Arti Conto
h
< Kurang dari x < y Apakah x kurang dari y
<= Kurang dari sama dengan
x <= y Apakah x kurang dari sama dengan y
> Lebih dari x > y Apakah x lebih dari y
>= Lebih dari sama dengan
x >= y Apakah x lebih dari sama dengan y
== Sama dengan x == y Apakah x sama dengan y
!= Tidak sama
dengan
Apakah ada cara lain?
Soal Pertama – Cara 2
1. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara
ketiganya (dianggap ketiga bilangan nilainya berbeda). TIDAK BOLEH MENGGUNAKAN OPERATOR LOGIKA
Alur algoritma / logika berpikir
• Deklarasi variabel A, B, C, max
• Input nilai A, B, C
• max = 0
• Jika A > max, maka max = A (A adalah kandidat TERBESAR)
• Jika B > max, maka max = B (B adalah kandidat TERBESAR)
• Jika C > max, maka max = C (C adalah kandidat TERBESAR)
Flowchart – Cara 2
MUL AI
Apakah ada cara lain?
Soal Pertama – Cara 3
1. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara
ketiganya (dianggap ketiga bilangan nilainya berbeda). TIDAK BOLEH MENGGUNAKAN OPERATOR LOGIKA
Alur algoritma / logika berpikir
• Deklarasi variabel A, max
• Input nilai A
• max = A
• Input nilai A
• Jika A > max, maka max = A
• Input nilai A
• Jika A > max, maka max = A
Apakah ada cara lain?
SELALU akan ada cara yang lain
Bagaimana dengan Soal Kedua?
1. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara
ketiganya (dianggap ketiga bilangan nilainya berbeda). TIDAK BOLEH MENGGUNAKAN OPERATOR LOGIKA
2. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara ketiganya (dianggap ketiga bilangan nilainya berbeda).
BOLEH MENGGUNAKAN OPERATOR LOGIKA
Ingat kembali: Operator Logika
&& atau AND : Logika AND (DAN)
|| atau OR: Logika OR (ATAU)
Ingat kembali: Operasi Logika
A B Hasil
TRUE TRUE TRUE
TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE
A B Hasil
TRUE TRUE TRUE
TRUE FALSE TRUE FALSE TRUE TRUE FALSE FALSE FALSE
Soal Kedua
1. Buatlah algoritma / fowchart untuk menginputkan 3 buah bilangan bulat dan tampilkan bilangan TERBESAR diantara ketiganya (dianggap ketiga bilangan nilainya berbeda).
BOLEH MENGGUNAKAN OPERATOR LOGIKA
Alur algoritma / logika berpikir
• Deklarasi variabel A, B, C
• Input nilai A, B, C
• Jika A > B dan A > C, maka cetak A (A adalah TERBESAR)
• Jika B > A dan B > C, maka cetak B (B adalah TERBESAR)
Flowchart
MUL AI
Deklarasi A, B, C
Input A, B,
C
A > B && A > C && B > C
2
Apa yang kita pelajari hari ini?
if ( cond )
next instruction
Flowchart Bentuk Umum - 1
biasa disebut : Bentuk IF-THEN Bentuk Umum - 1
biasa disebut : Bentuk IF-THEN
cond
next instruction TRUE
Cara-Kerja
Bila nilai cond
- TRUE, maka kerjakan semua instruksi yang ada dalam statements-true Setelah selesai, lanjutkan ke next-instruction
if ( cond )
TRUE cond
-Penulisan PROGRAM
Terikat aturan / ketentuan
if ( cond )
next instruction
Flowchart Bentuk Umum - 2
biasa disebut : Bentuk IF-THEN-ELSE Bentuk Umum - 2
biasa disebut : Bentuk IF-THEN-ELSE
cond
next instruction
cond = condition TRUE
Flowchart
Cara-Kerja
cond
false statements-true
-next instruction TRUE
next instruction
Bila nilai cond
- TRUE, maka kerjakan semua instruksi yang ada dalam statements-true Setelah selesai, lanjutkan ke next-instruction
cond
next instruction
TRUE FALSE
Penulisan PROGRAM terikat aturan, Penggambaran FLOWCHART bebas.
Perhatikan kembali struktur IF-THEN-ELSE dan IF-THEN Statement seperti yang sudah diterangkan sebagai berikut :
Cond TRUE
FALSE
S1 S2
Cond
FALSE
TRUE
S1
Struktur
IF-THEN-ELSE StrukturIF-THEN
Dari ilustrasi struktur diatas, S adalah satu atau sekelompok statement. Didalam kelompok S mungkin terdapat statement IF sehingga terjadi IF secara berjenjang atau secara tersarang yang biasa disebut Nested If (nest = sarang)
Dari ilustrasi struktur diatas, S adalah satu atau sekelompok statement. Didalam kelompok S mungkin terdapat statement IF sehingga terjadi IF secara berjenjang atau secara tersarang
yang biasa disebut Nested If (nest = sarang)
Contoh :
if (cond1)
S2 False
1)
2)
if (cond1)
Cond1 Cond3 True
S4
False
S5
S1
S3
Perhatikan posisi letak ‘titik’ Endif (akhir fungsi if ) dalam fowchart.
Posisi ini penting untuk menganalisa aliran terutama untuk nested IF yang komplek atau untuk proses pengulangan yang bersifat rekursif.
Latihan di Kelas
1. Susun algoritma (program) untuk menginput 3 buah bilangan yang masing-masing menyatakan panjang sisi sebuah segitiga. Kemudian periksa ketiga buah garis (sisi) tersebut . Bila ketiga buah garis (sisi) tersebut panjangnya sama maka cetak
perkataan “SAMA SISI”. Bila hanya dua sisi yang sama maka cetak perkataan “SAMA KAKI “. Tapi bila ketiga-tiganya tidak sama maka cetak perkataan “SEMBARANG”.
Tidak boleh menggunakan logical operator AND dan OR.
2. Susun program untuk menginput tiga buah bilangan yang menyatakan nilai ujian tiga buah mata kuliah.
Cetak perkataan “TIGA” bila ketiga mata kuliah tersebut mendapat nilai lulus.
Cetak perkataan “DUA”, bila hanya dua dari dari ketiga mata kuliah tersebut yang mendapat nilai lulus.
Cetak perkataan “SATU” bila hanya satu mata kuliah yang mendapat nilai lulus. Cetak perkataan “NOL” bila ketiga mata kuliah tersebut dinyatakan tidak lulus