Anda di halaman 1dari 0

27/09/2011

Ditulis oleh Endro Purnomo 1


Algoritma dan Pemrograman Komputer Algoritma dan Pemrograman Komputer
3 SKS 3 SKS
1
Pertemuan ke Pertemuan ke 7 7
dosen dosen
Endro Purnomo Endro Purnomo
Program Studi Pendidikan Matematika Program Studi Pendidikan Matematika
Universitas Muhammadiyah Purworejo Universitas Muhammadiyah Purworejo
S1 Ilmu Komputer UGM
S2 Master of Computer Science UGM (studi)
Cisco Certified Network Associate
Email : endro@umpwr.ac.id
YM and Gtalk : endrosri
Website : www.lintassolusi.com
Blog : blog.lintassolusi.com
2
Endro Purnomo Endro Purnomo
27/09/2011
Ditulis oleh Endro Purnomo 2
Struktur Kendali Struktur Kendali
1. Percabangan / Pemilihan
2. Perulangan / Looping
3
Percabangan / Pemilihan Percabangan / Pemilihan
4
27/09/2011
Ditulis oleh Endro Purnomo 3
Percabangan / Pemilihan Percabangan / Pemilihan
Adalah perintah yang memungkinkan pemilihan atas
perintah yang akan dijalankan sesuai dengan kondisi
tertentu.
Ada tiga macam perintah percabangan dalam C:
if (kondisi) { }
if (kondisi) { } else { }
switch (kondisi) { }
5
Percabangan / Pemilihan [Cont.2] Percabangan / Pemilihan [Cont.2]
Percabangan (brancing) di dalam pemrograman
digunakan oleh komputer untuk menentukan langkah
kerja. Percabangan menggunakan operator kondisional
yang akan menghasilkan nilai benar/true/1atau
salah/false/0.
Jika nilai yang dihasilkan benar, maka akan perintah
akan dilaksanakan, sedangkan jika salah, maka instruksi
tidak akan dilaksanakan.
6
27/09/2011
Ditulis oleh Endro Purnomo 4
Percabangan / Pemilihan [Cont.3] Percabangan / Pemilihan [Cont.3]
Contoh:
9 > 5, pasti selalu bernilai TRUE
N > 60, belum tentu benar, tergantung nilai N,
sehingga terdapat alternatif pilihan yang dihasilkan,
TRUE atau FALSE.
Cobalah:
printf( %d, 5>9); //akan menghasilkan nilai 0
printf(%d, 10>2); //akan menghasilkan nilai 1
Di dalam bahasa C, tidak dikenal variabel boolean, yang
ada adalah 0 (salah) dan 1 (benar) sehingga digunakan %d
untuk menampilkan hasil kondisi, karena bertipe numerik
7
IF Sederhana IF Sederhana
Bentuk Umum
if (<kondisi>) <perintah yang dikerjakan jika benar>;
Contoh
x=100;
y=10;
If (x>y)
{
printf(x lebih besar dari y);
}
8
27/09/2011
Ditulis oleh Endro Purnomo 5
IF ... ELSE ... IF ... ELSE ...
Bentuk Umum
if (<kondisi>)
<perintah yang dikerjakan jika benar>;
else
<perintah yang dikerjakan jika salah>;
Contoh
x=100;
y=10;
If (x>y)
printf(%d lebih besar dari %d,x,y);
else
printf(%d tidak lebih besar dari %d,x,y);
9
Bentuk IF lain Bentuk IF lain
#include<stdio.h>
void main()
{
int a;
10>2&&2<1?a=1:a=0;
printf (%d,a);
}
Jawab : 0
Karena pernyataan 10>2&&2<1 bernilai FALSE sehingga
perintah a=0 yang akan dikerjakan
10
27/09/2011
Ditulis oleh Endro Purnomo 6
IF ... ELSE ... Statement Jamak IF ... ELSE ... Statement Jamak
if (<kondisi>)
{
<perintah 1 yang dikerjakan jika benar>;
<perintah 2 yang dikerjakan jika benar>;
<perintah 3 yang dikerjakan jika benar>;
...
<perintah n yang dikerjakan jika benar>;
}
else
{
<perintah 1 yang dikerjakan jika salah>;
<perintah 2 yang dikerjakan jika salah>;
<perintah 3 yang dikerjakan jika salah>;
...
<perintah n yang dikerjakan jika salah>;
}
11
Soal Soal- -Soal Soal
Buatlah program untuk memeriksa suatu bilangan
genap atau ganjil
Buatlah program untuk memeriksa bilangan
terbesar dari 2 bilangan
Buatlah program untuk memvalidasi umur (1-100
tahun)
Buatlah program untuk mengecek apakah suatu segitiga
sama sisi atau bukan!
Buatlah program untuk memeriksa apakah
pemasukkan lebih besar / kecil dari pengeluaran
12
27/09/2011
Ditulis oleh Endro Purnomo 7
Percabangan Kompleks Percabangan Kompleks
Percabangan dimana kondisi pemilihan tidak hanya satu
tetapi bisa terdiri dari banyak alternatif serta perintah-
perintah yang dikerjakannya juga bisa lebih dari satu.
IF Bersarang (Nested IF)
IF Bertingkat
13
IF Bersarang (Nested IF) IF Bersarang (Nested IF)
14
27/09/2011
Ditulis oleh Endro Purnomo 8
IF Bersarang (Nested IF) [Cont.2] IF Bersarang (Nested IF) [Cont.2]
15
IF Bersarang (Nested IF) [Cont.3] IF Bersarang (Nested IF) [Cont.3]
16
27/09/2011
Ditulis oleh Endro Purnomo 9
IF Bersarang (Nested IF) [Cont.4] IF Bersarang (Nested IF) [Cont.4]
17
IF Bersarang (Nested IF) [Cont.5] IF Bersarang (Nested IF) [Cont.5]
18
27/09/2011
Ditulis oleh Endro Purnomo 10
IF Bersarang (Nested IF) [Cont.6] IF Bersarang (Nested IF) [Cont.6]
19
IF Bertingkat IF Bertingkat
if (<kondisi1>)
{
<perintah 1 dikerjakan jika benar>;
}
else if (<kondisi2>)
{
<perintah 2 dikerjakan jika benar>;
}
else if (<kondisi3>)
{
<perintah 3 dikerjakan jika benar>;
}
...
else if (<kondisi4>)
{
<perintah 4 dikerjakan jika benar>;
}
20
27/09/2011
Ditulis oleh Endro Purnomo 11
Bedakan dengan Bedakan dengan
if (<kondisi1>)
{
<perintah 1 dikerjakan jika benar>;
}
if (<kondisi2>)
{
<perintah 2 dikerjakan jika benar>;
}
if (<kondisi3>)
{
<perintah 3 dikerjakan jika benar>;
}
...
if (<kondisi4>)
{
<perintah 4 dikerjakan jika benar>;
}
21
Percabangan dengan Switch Percabangan dengan Switch
Perintah ini digunakan sebagai alternatif pengganti dari
sintaks if else secara sederhana dimana alternatif
pilihan bisa lebih dari satu.
Namun switch tidak bisa digunakan untuk pilihan yang
mengandung suatu kondisi tertentu.
Dengan perintah ini program percabangan akan
semakin mudah dibuat dan dipelajari
22
27/09/2011
Ditulis oleh Endro Purnomo 12
Switch dengan break Switch dengan break
Bentuk Umum
switch (<variabel>)
{
case <konstanta 1> : <perintah 1>; break;
case <konstanta 2> : <perintah 2>; break;
case <konstanta 3> : <perintah 3>; break;
...
case <konstanta n> : <perintah n>; break;
default : <perintah default>;
}
23
Bedakan dengan Switch tanpa break Bedakan dengan Switch tanpa break
switch (<variabel>)
{
case <konstanta 1> : <perintah 1>;
case <konstanta 2> : <perintah 2>;
case <konstanta 3> : <perintah 3>;
...
case <konstanta n> : <perintah n>;
default : <perintah default>;
}
Perintah break digunakan untuk keluar dari
struktur kendali percabangan/pemilihan dan
perulangan
24
27/09/2011
Ditulis oleh Endro Purnomo 13
Flowchart switch dengan break Flowchart switch dengan break
25
Karakteristik Switch Karakteristik Switch
Perintah switch akan menyeleksi kondisi yang diberikan dan
kemudian membandingkan hasilnya dengan konstanta-
konstanta yang berada di case.
Pembandingan akan dimulai dari konstanta 1 sampai
konstanta terakhir.
Jika hasil dari kondisi sama dengan nilai konstanta tertentu,
misalnya konstanta 1, maka pernyataan 1 akan dijalankan
sampai ditemukan break.
Pernyataan break akan membawa proses keluar dari
perintah switch. Jika hasil dari kondisi tidak ada yang sama
dengan konstanta-konstanta yang diberikan, maka
pernyataan pada default akan dijalankan
26
27/09/2011
Ditulis oleh Endro Purnomo 14
Contoh program dengan switch Contoh program dengan switch
#include<stdio.h>
void main()
{
int hari;
printf("Hari ini adalah hari ke ");
scanf("%d",&hari);
printf("yaitu hari ");
switch(hari)
{
case 1 : printf("Minggu");break;
case 2 : printf("Senin");break;
case 3 : printf("Selasa");break;
case 4 : printf("Rabu");break;
case 5 : printf("Kamis");break;
case 6 : printf("Jumat");break;
case 7 : printf("Minggu");break;
default : printf("Tidak ada hari lebih dari 7");
}
printf("\n");
system("pause");
27
Contoh program dengan switch Contoh program dengan switch
#include<stdio.h>
void main()
{
int hari;
printf("Hari ini adalah hari ke ");
scanf("%d",&hari);
printf("yaitu hari ");
switch(hari)
{
case 1 : printf("Minggu");break;
case 2 : printf("Senin");break;
case 3 : printf("Selasa");break;
case 4 : printf("Rabu");break;
case 5 : printf("Kamis");break;
case 6 : printf("Jumat");break;
case 7 : printf("Minggu");break;
default : printf("Tidak ada hari lebih dari 7");
}
printf("\n");
system("pause");
28
27/09/2011
Ditulis oleh Endro Purnomo 15
Soal Soal- -Soal Soal
Buatlah konversi nilai huruf dari nilai yang
diinputkan user
A = 80-100
B = 65-79
C = 50-64
D = 35-49
E = 0-34
29
Soal Soal- -Soal Soal
Buatlah program yang menerima inputan 3 buah
panjang sisi segitiga, kemudian:
Jika segitiga tersebut sama sisi katakan SEGITIGA
SAMA SISI
Jika segitiga tersebut sama kaki katakan
SEGITIGA SAMA KAKI
Jika bukan keduanya katakan SEGITIGA
SEMBARANG
30

Anda mungkin juga menyukai