PRAKTIKUM KE 6 PERNYATAAN KONTROL Praktikum kali ini, kita masih akan membahas mengenai pernyataan kontrol if dan if .. else. Pernyataan if – else digunakan untuk mengerjakan uji logika kemudian mengambil salah satu dari dua kemungkinan yang bergantung dari dipenuhi atau tidak syarat yang diberikan. Bagian else pada pernyataan if – else adalah optional. Jadi, dalam bentuk paling sederhana pernyataan tersebut mengambil bentuk if (ekspresi) pernyataan Bagian ekspresi harus berada di dalam kurung. Dalam bentuk ini, bagian pernyataan akan dijalankan hanya jika ekspresi berharga tidak sama dengan nol (atau berharga benar). Apabila ekspresi berharga sama dengan nol (atau berharga salah) maka pernyataan akan diabaikan. Bagian pernyataan bisa sederhana ataupun gabungan. Dalam prakteknya, biasanya pernyataan merupakan pernyataan gabungan. Dibawah ini diberikan beberapa contoh penggunaan if sederhana tanpa else. Contoh 6.1 #include<stdio.h> #include<math.h> main(){ float x,y; 9
printf("Masukkan nilai x :");scanf("%f",&x); if (x<=4) y=3*pow(x,4); printf("Harga y :%f",y); }
Contoh 6.2 #include<stdio.h> main(){ float balance; char status; printf("Masukkan status :");scanf("%c",&status); printf("masukkan balance :");scanf("%f",&balance); if ((balance < 1000) || (status=='R')) printf("balance : %f",balance); } Contoh 6.3 #include<stdio.h> #include<math.h> main(){ float a,b,ymid,xmid; printf("Masukkan nilai a :");scanf("%f",&a);
9
printf("Masukkan nilai b :");scanf("%f",&b); if ((a>=0) && (b<=5)) { xmid=(a+b)/2; ymid=sqrt(xmid); printf("xmid :%f, ymid : %f",xmid,ymid); } } Bentuk umum dari pernyataan kontrol if – else adalah if (ekspresi) pernyataan 1 else pernyataan 2 Apabila ekspresi berharga tidak sama dengan nol (atau berharga benar) maka pernyataan 1 akan dijalankan. Sebaliknya, jika ekspresi berharga sama dengan nol (bernilai salah) maka pernyataan 2 yang akan dieksekusi. Dibawah ini diberikan beberapa contoh penggunaan if – else. Contoh 6.4 #include<stdio.h> #include<math.h> main(){ float tax, pay; 9
char status; printf("Masukkan status :");scanf("%c",&status); printf("Masukkan pembayaran :");scanf("%f",&pay); if (status=='R') { tax=0.20*pay; printf("pajak :%f",tax); } else { tax=0.14*pay; printf("pajak :%f",tax); } } Contoh 6.5 #include<stdio.h> #include<math.h> main(){ char status; float r,p,l,Luas; printf("Masukkan status :");scanf("%c",&status); if (status=='c')
9
{ printf("Menghitung luas lingkaran. \n"); printf("masukkan radius r:");scanf("%f",r); Luas=3.14*r*r; printf("Luas lingkaran :%f",Luas); } else { printf("Menghitung luas persegi panjang. \n"); printf("masukkan panjang:");scanf("%f",p); printf("masukkan lebar:");scanf("%f",l); Luas=p*l; printf("Luas lingkaran :%f",Luas); } } Contoh 6.6 #include<stdio.h> #include<math.h> main() { float l,p,radius,luas,; int lingk;
9
printf("masukkan 1: circle, 0 :pp");scanf("%i",&lingk); if (lingk) { printf("masukkan radius ");scanf("%f",&radius); luas=3.14*radius*radius; printf("Luas :%f",luas); } else { printf("masukkan pqnjqng P ");scanf("%f",&p); printf("6masukkan lebar l ");scanf("%f",&l); luas=p*l; printf("Luas :%f",luas); } } Contoh 6.7 #include<stdio.h> #include<math.h> main() { float pajak,pembayaran; char status;
9
printf("masukkan status :");scanf("%c",&status); printf("masukkan pembayaran :");scanf("%f",&pembayaran); if (status=='S') { pajak=0.20*pembayaran; printf("pembayaran :%f",pajak); } else { pajak=0.12*pembayaran; printf("pembayaran :%f",pajak); } }
Pernyataan If- else bersarang Dimungkinkan juga untuk membuat pernyataan if – else bersarang (nested if – else). Ada banyak bentuk pernyataan if – else bersarang yang dapat dibuat. Bentuk yang paling umum adalah seperti berikut if (ekspresi 1) if (ekspresi 2) Pernyataan 1 else Pernyataan 2 9
else if (ekspresi 3) pernyataan 3 else Pernyataan 4
Dalam beberapa situasi, mungkin juga diperlukan ungkapan bersarang Sebagai contoh, bentuk umum dari empat
if else.
pernyataan bersarang if – else dapat
dituliskan sebagai
if (ekspresi 1) pernyataan 1 else if (ekspresi 2) pernyataan 2 else if (ekspresi 3) pernyataan 3 else if (ekspresi 4) pernyataan 4 else pernyataan 5
9
TUGAS Buatlah sebuah program komputer untuk menyatakan jumlah hari pada suatu bulan dan tahun tertentu. Ingat bahwa tahun perredaran matahari dibagi menjadi dua yaitu tahun biasa dan tahun kabisat. Pada saat tahun kabisat bulan Februari berumur 29 hari sedangkan di tahun biasa umur bulan Februari 28 hari. Tahun kabisat adalah tahun yang dapat dibai menjadi 4 seperti tahun 1988, 1992, 1996, 2000, 2012. Ikuti ketentuan seperti berikut •
Masukan adalah bulan (berupa angka 1 hingga 12) dan tahun.
•
Keluaran berupa jumlah hari pada bulan dan tahun tersebut serta nama bulannya.
Contoh keluaran
9