Modul 4 Kondisional/Pencabangan If - Else I
Tujuan •
II
Mempelajari konsep pencabangan (If – Else) dalam program C
Alat dan Bahan • •
III
PC Desktop Turbo C
Pendahuluan Dalam penyelesaian suatu masalah, perlu adanya penganalisaan kasus yang mungkin ada/terjadi kemudian dilakukan aksi untuk setiap kasus yang ada tersebut. Dalam pemrograman C, hal ini dapat dilakukan dengan menggunakan sintaks if –else sebagai sintaks “penyeleksi kondisi”. Penyelesaian kasus dilakukan tergantung jenis kasus yang dihadapi. Dalam hal ini, pemrograman C membagi pemecahan kasus ke dalam 4 jenis yaitu : 1. Kasus dengan 1 kondisi 2. Kasus dengan 2 kondisi 3. Kasus dengan 3 kondisi 4. Kasus di atas 3 kondisi Kasus dengan 1 kondisi Sintaks: If (kondisi) then { Statement Æ Eksekusi isi dari kurung kurawal ini }
kondisi
Ya/benar
statement
Tidak/salah
Î Ketika kondisi terpenuhi, maka statement akan dieksekusi Contoh : Program penentuan kelulusan : Jika nilai yang diperoleh lebih besar dan sama dengan 60, maka dinyatakan lulus Kasus dengan 2 kondisi Sintaks: If (kondisi) { Statement1 Æ Eksekusi isi dari kurung kurawal ini } else { Statement2 Æ Eksekusi isi dari kurung kurawal ini } Î Ketika kondisi terpenuhi, maka eksekusi statement1, tetapi jika kondisi tidak terpenuhi, maka eksekusi statement2
Ya kondisi1
statement untuk kondisi1 terpenuhi
Tidak statement untuk kondisi1 tdk terpenuhi
Contoh : Dalam pengontrolan level permukaan zar cair dalam suatu tangki, dimana jika level zar cair sudah memenuhi tangki maka kran air harus dalam kondisi tertutup begitu juga sebaliknya jika level air belum mencapai puncak tangki maka posisi kran air harus dalam kondisi terbuka dan seterusnya. Kasus dengan 3 kondisi Sintaks: If (kondisi1) { Statement1 Æ Eksekusi isi dari kurung kurawal ini } else if (kondisi2) { Statement2 Æ Eksekusi isi dari kurung kurawal ini } else if (kondisi3) { Statement3 Æ Eksekusi isi dari kurung kurawal ini }
kondisi1
Ya
statement untuk kondisi1
Ya
statement untuk kondisi2
Ya
statement untuk kondisi3
Tidak kondisi2 Tidak
kondisi3
Tidak
Î Ketika kondisi1 terpenuhi, maka eksekusi statement1, tetapi jika tidak, maka jika kondisi2 terpenuhi, eksekusi statement2, jika tidak, maka jika kondisi3 terpenuhi, eksekusi statement3 Untuk kasus dengan 3 kondisi dapat juga diselesaikan dengan Nested if (If bersarang)
If (kondisi1) { Statement1 Æ Eksekusi isi dari kurung kurawal ini } else if (kondisi2) { Statement2 Æ Eksekusi isi dari kurung kurawal ini } else { Statement3 Æ Eksekusi isi dari kurung kurawal ini } Î Jika kondisi satu dipenuhi, maka program mengeksekusi semua statement dibawahnya (statement1), tetapi jika tidak, jika kondisi 2 terpenuhi maka kerjakan statement dibawahnya (statement 2), tetapi jika kondisi dua juga tidak terpenuhi maka yang akan dieksekusi adalah statement3. Kasus dengan kondisi di atas 3 akan di bahas pada modul berikutnya.
IV
Prosedur Percobaan
A. Buatlah contoh program dibawah ini, kemudian compile dan jalankan serta jelaskan maksud/tujuan program (Beri komentar)!
Program 1 (Save dengan nama file: pa1.c) #include <stdio.h> #include
main () { int bil; printf(“Masukkan angka : “); scanf(“%d”,&bil); if (bil>=0){ if (bil>10000) printf(“\n Bilangan yang anda masukan adalah bilangan positif yang besar”); else if (bil>=5000&&bil<=10000) printf(“\n Bilangan yang anda masukan adalah bilangan positif yang cukup besar”); else printf(“\n Bilangan yang anda masukan adalah bilangan positif”);} else printf(“\n Bilangan yang anda masukan adalah bilangan negatif”); getch(); return 0; }
Program 2 (Save dengan nama file: pa2.c) #include<stdio.h> #include main() {
char ch; printf(“Masukkan sebuah karakter: “); scanf(“%c”,&ch); if(ch>=’a’&&ch<=’z’) printf(“Huruf Kecil\n”); else if (ch>=’0’&&ch<=’9’) printf(“Karakter nomor”); else prinf(“Karakter lain”); getch(); return 0; }
B. Periksalah kesalahan program di bawah ini, kemudian perbaiki dan berikan penjelasan hasil eksekusinya! Program 3 (Save dengan nama file: pa3.c) #include<stdio.h> main() { printf(“Masukkan if (IPK>=3.5) printf(“Predikat else(IPK<=3.5) printf(“Predikat if printf(“Predikat
IPK :)scanf(“%d”,&IPK); anda ”Dengan Pujian””); anda ”Sangat Memuaskan””); anda ”Memuaskan””);
Program 4 (Save dengan nama file: pa4.c) /*Program Indeks Nilai Ujian*/ #include<stdio.h> main() float nilai; char indeks; printf(“Masukkan Nilai :)scanf(“%d”,$nilai); if (nilai>=80) indeks=’A’; else if (nilai>=70 && nilai<80) indeks=B; else if (nilai >=55 && nilai <55) indeks=’C’ else if (nilai>=40 && nilai <55) indeks=’D’ else indeks=’E’ printf(“Indeks Nilai Ujian Mahasiswa adalah %x,nilai); }
Tugas
V 1.
Buatlah flowchart dan program untuk menentukan berat badan ideal dengan perhitungan dan ketentuan sebagai berikut : Jika beratnya sesuai dengan perhitungan Æ (tinggi badan-100)-(10%*(tinggai badan100)) maka akan muncul pesan ”Berat badan anda ideal.
2.
Jika lebih besar dari perhitungan akan muncul pesan ”Anda kelebihan berat badan, Dietlah secara sehat!!”, jika lebih kecil maka akan muncul pesan ”Rajin-rajinlah makan” Masukan: nama mahasiwa, berat badan Keluaran: nama mahasiswa, keterangan Buatlah program menentukan wujud air (beku,cair dan gas) dengan ketentuan : Masukan : Temperatur dalam derajat celcius Keluaran : wujud air