1I - 1 MODUL II PERCABANGAN DAN PERULANGAN I. TUJUAN 1

advertisement
MODUL II
PERCABANGAN DAN PERULANGAN
I.
TUJUAN
1.
Memahami dan menerapkan sintaks-sintaks percabangan (struktur IF dan CASE)
dalam
menyelesaikan berbagai studi kasus
2.
Memahami dan menerapkan sintaks-sintaks pengulangan (struktur For, While, dan
Do…While) dalam menyelesaikan persoalan
II.
DASAR TEORI
1.
Percabangan
a.
Struktur IF
Sintaks sederhana IF adalah
if (kondisi)
statement;
Statement pada
sintaks di
atas akan
dilakukan
jika
kondisinya
bernilai
TRUE
(tidak sama dengan nol). Apabila statement yang akandilakukan lebih dari satu, maka
sintaksnya menjadi :
if (kondisi)
{
statement1;
statement2;
}
Contoh
Menentukan
boleh
tidaknya seseorang melihat film bioskop. Seseorang diperbolehkan
menonton jika usianya 17 tahun ke atas. Berikut ini program C nya :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int usia;
printf("Berapa usia anda : ");
scanf("%d",&usia);
if (usia < 17)
printf("Anda tidak boleh menonton bioskop");
return 0;
}
1I - 1
Statement IF juga dapat ditambahkan ELSE sebagai konsekuensi alternatif
jika kondisi tidak dipenuhi (FALSE). Sintaksnya:
if (kondisi)
{
statement1;
statement2;
.
}
else
{
statement1;
statement2;
}
Contoh :
Anda dapat modifikasi program C untuk menentukan boleh tidaknya seseorang menonton
bioskop seperti di bawah ini:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int usia;
printf("Berapa usia anda : ");
scanf("%d",&usia);
if (usia < 17)
printf("Anda tidak boleh menonton bioskop");
else
printf("Anda boleh menonton bioskop");
return 0;
}
1I - 2
b.
Struktur SWITCH
Statement SWITCH juga berfungsi sama dengan IF. Memperbolehkan percabangan
pada multiple outcomes.
Sintaks :
switch( switch_ekspresi ){
case case_pilihan1:
statement1;//
statement2;//blok 1
break;
case case_pilihan2:
statement1;//
statement2;//blok 2
break;
default:
statement1;//
statement2;//blok n
}
Contoh
#include <stdio.h>
#include <stdlib.h>
int main()
{
int nilai;
printf("Masukan nilai 1-3 ?");
scanf("%d",&nilai);
switch (nilai){
case 1:
printf("Satu\n");
case 2:
printf("Dua\n");
case 3:
printf("Tiga\n");
default:
printf("Bukan nilai 1, 2 atau 3 \n");
}
return 0;
}
1I - 3
2.
Perulangan
Pengulangan merupakan sebuah konsep pemrograman yang penting karena konsep ini
memungkinkan pengguna menggunakan sekumpulan baris program berulang kali.
Struktur perulangan secara umum ada dua bagian:

Kondisi perulangan
Ekspresi boolean yang harus dipenuhi untuk melaksanakan perulangan

Badan perulangan
Bagian algoritma yang diulang
Struktur perulangan disertai pula:

Inisialisasi
Aksi yang dilakukan sebelum perulangan dilakukan pertama kali

Terminasi
Aksi yang dilakukan setelah perulangan selesai dilaksanakan
Beberapa hal yang harus diperhatikan:
a. Inisialisasi dan terminasi tidak selalu harus ada, namun dalam beberapa kasus inisialisasi
biasanya diperlukan.
b. Suatu perulangan harus berhenti!
c. Beberapa struktur perulangan dapat dipakai untuk masalah yang sama, namun ada notasi
perulangan yang hanya cocok dipakai untuk masalah tertentu.
Notasi struktur perulangan :
a. Struktur FOR
Struktur perulangan FOR digunakan untuk menghasilkan perulangan sejumlah kali yang
dispesifikasikan. Jumlah perulangan diketahui atau dapat ditentukan sebelum eksekusi.
Diperlukan variabel counter/pencacah. Jika cacah perulangan sudah mencapai jumlah yang
dispesifikasikan, maka proses perulangan berhenti.
Bentuk umum struktur FOR :
for(<ekspresi1>; <ekspresi2>; <ekspresi3>)
{
aksi1;
aksi2;
}
Keterangan :
Ekspresi1: inisialisasi counter
Ekspresi2: syarat pelaksanaan
Ekspresi3: naikkan counter (inkremen)
1I - 4
Contoh :
Output :
#include <stdio.h>
Hello Word
#include <stdlib.h>
int main()
{
int i;
for(i=1;i<=5;i++)
Hello Word
Hello Word
Hello Word
Hello Word
printf("Hello World \n");
return 0;
}
b. Struktur WHILE
Sintaks WHILE menyatakan pengulangan dengan pengecekan di awal setiap iterasi,
apakah sebuah kondisi terpenuhi atau tidak. Jika kondisi terpenuhi (bernilai benar),
maka iterasi a kan dilanjutkan. Jika kondisi tidak terpenuhi, maka iterasi dihentikan.
Bentuk umum struktur WHILE :
inisialisasi;
while(<ekspresi>)
{
aksi1;
aksi2;
}
terminasi;
Keterangan :
Inisialisasi : inisialisasi counter
Ekspresi : syarat pelaksanaan
Terminasi : menghentikan counter (inkremen)
Contoh :
Output :
#include <stdio.h>
Hello Word
#include <stdlib.h>
int main()
{
int i;
i = 1;
Hello Word
Hello Word
Hello Word
Hello Word
while(i<=5)
printf("Hello World \n");
i++;
return 0;
}
1I - 5
c. Struktur DO-WHILE
Sintaks DO-WHILE pada kasus yang terlebih dahulu memanipulasi objek, baru kemudian
memeriksa kondisi objek tersebut.
Bentuk umum struktur WHILE :
inisialisasi;
do
{
aksi1;
aksi2;
} while(<ekspresi>);
terminasi;
Keterangan :
Inisialisasi : inisialisasi counter
Ekspresi : syarat pelaksanaan
Terminasi : menghentikan counter (inkremen)
Contoh :
Output :
#include <stdio.h>
Hello Word
#include <stdlib.h>
int main()
{
int i;
i = 1;
Hello Word
Hello Word
Hello Word
Hello Word
do
{
Printf("Hello World \n");
i++;
}while(i<=5)
return 0;
}
1I - 6
III.
GUIDED
1.
Percabangan IF
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x;
printf("Masukkan sebuah bilangan bulat: ");
scanf("%d",&x);
if (x % 2 ==0 )
printf("Nilai Genap\n");
else
printf("Nilai Ganjil\n");
return 0;
}
2.
Percabangan SWICTH
#include <stdio.h>
#include <stdlib.h>
int main()
{
int pilih;
float sisi, jari2, tinggi;
printf("
<<< M E N U <<<\n");
printf("\n");
printf("1. Menghitung Isi Kubus\n");
printf("2. Menghitung Luas Lingkaran\n");
printf("3. Menghitung Isi Silinder\n");
printf("\n");
printf("Pilih Nomor (1-3) ?");
scanf("%d",&pilih);
printf("\n");
switch(pilih){
case 1:
printf("Panjang Sisi Kubus ?");
scanf("%f",&sisi);
printf("Isi Kubus = %f \n", sisi * sisi * sisi);
break;
case 2:
printf("Jari-Jari Lingkaran ?");
scanf("%f",&jari2);
printf("Luas Lingkaran = %f \n", 3.14 * jari2 * jari2);
break;
case 3:
printf("Jari-Jari Lingkaran ?");
scanf("%f",&jari2);
printf("Tinggi Silinder ?");
scanf("%f",&tinggi);
printf("Isi Silinder = %f \n", 3.14 * jari2 * jari2 *
tinggi);
break;
}
return 0;
}
1I - 7
3.
Perulangan FOR
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i;
for (i=1;i<=5;i++)
printf("%d\n",i);
return 0;
}
4.
Perulangan WHILE…
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x;
x=3;
while (x<5)
printf("%d\n",x);
x++;
return 0;}
5.
Perulangan DO… WHILE
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x;
x=3;
do {
printf("%d\n",x);
x++;
}while (x<5)
return 0;
}
1I - 8
IV.
UNGUIDED
a. Percabangan
Buatlah program dalam bahasa C untuk mengidentifikasi biaya operasi suatu penyakit. Tabel
penyakit dan biayanya tertera dalam table berikut:
Nama Operasi
Operasi Mata
Operasi Jantung
Jenis Penyakit
Katarak
Plus / Minus
Silinder
Jantung Koroner
Katup Jantung
Otot Jantung
Biaya
Rp. 7.500.000
Rp. 5.000.000
Rp. 4.000.000
Rp. 500.000.000
Rp. 350.000.000
Rp. 450.000.000
Program dalam bentuk menu pilihan dimana awalnya user memasukkan nama operasinya lalu
selanjutnya user memasukkan nama penyakitnya, maka akan keluar jumlah biayanya.
b. Perulangan
1. Buatlah Program untuk menghitung total nilai dari suatu bilangan yang diinputkan.
Misal: Input bilangan: 5, Total Nilai=5+4+3+2+1=15
2. Buatlah sebuah program untuk menghitung hasil pangkat suatu bilangan.
Misal: Input bilangan = 2 ; Input Pencacah=3 ; Hasil Pangkat = 8
1I - 9
Download