DISUSUN OLEH
KELOMPOK 9
Kami menyadari bahwa makalah ini masih jauh dari kata sempurna dan masih banyak
kesalahan beserta kekurangan di dalamnya, apabila terdapat banyak kesalahan pada makalah
ini kami mohon maaf yang sebesar-besarnya.
Penyusun
i
DAFTAR ISI
ii
BAB I
PENDAHULUAN
1.3 TUJUAN
1.Untuk memahahi arti dari algoritma tiga kondisi.
1
BAB II
PEMBAHASAN
Untuk kondisi pertama selalu menggunakan IF (Kondisi 1) THEN, sedangkan untuk kondisi
kedua dan seterusnya selain kondisi terakhir, menggunakan ELSE IF (kondisi n) THEN, dan
untuk kondisi terakhir menggunakan ELSE saja.
Jawab:
program cari_nilai
deklarasi
var nilai:integer
algoritma
read(nilai)
IF(nilai>80)THEN
write("A")
ELSE IF(nilai>=70 AND nilai <=80) THEN
write("B")
ELSE
write("C")
ENDIF
2
2.2 Algoritma lebih dari 3 kondisi
Kondisi dalam algoritma bisa lebih dari 3 kondisi, strukturnya akan selalu sama,
untuk kondisi pertama maka menggunakan IF (kondisi 1) ELSE...., sedangkan untuk kondisi
ke 2 dan seterusnya selain kondisi terakhir yaitu menggunakan ELSE IF (kondisi n)
THEN....., sedangkan untuk kondisi terakhir baru menggunaakn ELSE....saja.
3
Masalah yang mempunyai tiga buah kasus atau lebih tetap dapat dianalisis dengan struktur
IF-THEN-ELSE sebagaimana halnya pada masalah dengan dua kasus.
aksi1 aksi1
else else
aksi2 aksi2
else else
aksi3
else
dan seterusnya.
Contoh analisis :
Buatlah algoritma dan program yang membaca temperatur air, T, (dalam suatu derajat celcius) pada
tekanan normal, lalu menentukan apakah wujud air tersebut dalam keadaan padat (T ≤ 0°C), cair (0 <
T < 100), atau gas (T > 100).
Penyelesaian
Analisis kasus :
4
Algoritma WUJUD_AIR
DEKLARASI
DESKRIPSI
read(T)
if T ≤ 0 then
write(‘padat’) { kasus 1 }
else
endif
(* DEKLARASI *)
endif
var
(* DESKRIPSI *)
begin
write('suhu ');read(T);
write('adalah ');
if T <= 0 then
write('padat') { kasus 1 }
else
else
Struktur CASE
Tidak semua bahasa pemrograman menyediakan struktur CASE (misalnya Bahasa Fortran). Bahasa
pascal menyediakan struktur ini. Jika bahasa pemrograman tidak yang ekivalen.
Contoh analisis :
Buatlah algoritma dan program yang membaca angka bulan dan tahun, lalu menuliskan jumlah hari
dalam bulan tersebut. Misalnya jika dibaca bulan 8 (agustus), maka jumlah harinya adalah 31.
Penyelesaian
1, 3, 5, 7, 8, 10, 12 31
4, 6, 9, 11 30
6
program JUMLAH_HARI;
uses wincrt;
(* DEKLARASI *)
var
AngkaBulan : integer; { 1 . . 12 }
JumlahHari : integer;
(* DESKRIPSI *)
begin
write('Tahun = ');readln(Tahun);
case AngkaBulan of
JumlahHari:=29
DEKLARASI
else
AngkaBulan : integer { 1 . . 12 }
JumlahHari:=28;
Tahun : integer { > 0 }
{endif}
JumlahHari : integer
end;
DESKRIPSI
writeln('Jumlah hari dalam bulan ',AngkaBulan,' adalah ',JumlahHari);
read(AngkaBulan,Tahun)
end.
case(AngkaBulan)
AngkaBulan= [ 4, 6, 9, 11 ] : JumlahHari←31
7
AngkaBulan= 2 : case Tahun
Percabangan adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika kondisi yang
menjadi syarat terpenuhi, maka opsi atau pilihan dijalankan, jika tidak maka sebaliknya.
Dalam java terdapat 4 macam jenis percabangan, if, if-else, else-if, dan juga switch. Keempat
jenis ini memiliki penggunaan masing-masing. Disini kita akan membahas tentang
8
b) Range data yang diperiksa bernilai 0 s/d 255.
Jika kamu ingat pernyataan main( ) pada program Java, pernyataan main memiliki
parameter String[ ]args , dimana args merupakan argumen yang diberikan pada saat program
dijalankan melalui konsol. Biasanya argumen yang diberikan berupa opsi bagaimana program
harus dilaksanakan. Di sini pernyataan switch juga berguna untuk memilih bagaimana
program akan berjalan. Jika kamu terbiasa atau pernah bergaul dengan Linux, maka tidak
asing untuk menemukan perintah pada Linux seperti "ls -l" atau "tar xfz blabla". Di sini ls
atau tar adalah nama program dan "-l" atau "xfz blabla" adalah argumen yang diberikan pada
saat program dijalankan.
B. Fungsi
a) Digunakan ketika kita ingin menuliskan percabangan ataupun pengambilan keputusa
dengan sangat banyak pilihan
b) Digunakan ketika kita ingin menuliskan percabangan multi arah
c) Instruksi switch case digunakan sebagai instruksi pemilihan dimana aksi yang akan
dilakukan bergantung pada nilai dari satu macam variabel saja.
C. Cara Program
switch(ekspresi){
case konstanta -1:
pernyataan -1;
pernyataan -2;
…..
break;
case konstanta -2:
pernyataan -1;
…..
break;
case konstanta -n:
pernyataan -n;
…..
break
default :
…..
9
…..
break;
}
Konsep di atas menjelaskan bawah untuk pernyataan adalah nilai yang akan diseleksi
dan akan dibuat case pada setiap case untuk setiap nilai dari variable yang sesuai.
Keterangan :
case nilai: (nilai yang sama dengan variabel)
Pernyataan;
break;
Adalah pernyataan yang dikerjakan jika nilai sesuai dengan nilai variabel di dalam sebuah
switch (nilai) yang diberikan.
default:
Pernyataan ;
break;
Adalah pernyataan yang dikerjakan jika nilai dari kecocokan variable nilai di switch (nilai)
tidak memenuhi disetiap case nilai.
Setiap blok default maupun case harus diakhiri dengan tanda titik dua ( : ) dan break diakhiri
dengan tanda semikolon ( ; ).
Pernyataan switch akan menyeleksi atau mencari sebuah kondisi yang diberikan dan
kemudian akan membandingan hasilnya dengan konstanta yang berada di dalam case.
Pembandingan akan dimulai dari konstanta1 sampai konstanta akhir. Jika hasil yang
didapatkan sama dengan konstanta3 maka statemen pada konstanta3 akan diproses. Jika hasil
tidak ada yang memenuhi kriteria dari masing-masing konstanta maka statement yang berada
pada default akan diproses.
Tipe data dari pernyataan harus karakter atau integer. Default mengekspresikan
statement alternatife yaitu jika nilai yang dimasukan tidak sesuai dengan nilai nilai konstan
yang telah didefinisikan.
Break berfungsi sebagai statement peloncatan atau untuk mengakhiri statement.
Apabila tidak ada break, komputer akan mengeksekusi intruksi yang berada di bawahnya
walaupun berada di case yang berbeda. Contohnya, misalnya hasil yang kita dapatkan akan
memproses konstanta1, apabila pada case konstanta1 tidak ada break, maka statement2 pada
case konstanta2 sampai case konstanta3 akan ikut di proses. Maka dari itu apabila
menggunakan Switch Case , jangan lupa untuk menulis break pada akhir statemen.
10
D. Perbedaan Antara struktur IF dengan Switch
Walaupun memiliki tujuan yang hampir sama, namun struktur if dan switch memiliki
perbedaan yang mendasar. Di dalam struktur switch, kondisi logika hanya akan diperiksa satu
kali saja, yaitu pada awal perintah switch, dan hasilnya dibandingkan dengan setiap case.
Akan tetapi di dalam struktur if, setiap kondisi akan selalu diperiksa. Sehingga jika anda
memiliki struktur percabangan yang banyak, struktur switch akan lebih cepat dieksekusi.
Namun disisi lain, switch memiliki keterbatasan dalam jenis operasi perbandingan
yang dapat dilakukan. Operasi perbandingan di dalam switch terbatas untuk hal-hal sederhana
seperti memeriksa nilai dari sebuah variabel.
Struktur switch tidak bisa digunakan untuk percabangan program dengan operasi yang
lebih rumit seperti membandingkan 2 variabel. Kita tidak bisa menggunakan switch untuk
membuat kode program menentukan nilai terbesar seperti contoh pada tutorial if sebelum ini.
Untuk kebanyakan kasus, kita akan sering menggunakan if dibandingkan switch.
E. Contoh
import java.util.*;
public class Switch_Case
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
char nilai = 'B';
String nama;
System.out.print("Masukkan nama: ");
nama = input.nextLine();
System.out.println("Nilai : "+nilai);
System.out.println("\n");
switch(nilai)
{
case 'A': System.out.println(nama+" Nilai Anda memuaskan");
break;
case 'B': System.out.println(nama+" Nilai Anda bagus");
break;
case 'C': System.out.println(nama+" Nilai Anda cukup");
11
break;
}
}
Output :
Masukkan Nama : RATIH
Nilai :B
RATIH Nilai Anda Bagus
Pengertian Kondisi SWITCH CASE Bahasa C
Kondisi SWITCH CASE adalah percabangan kode program dimana kita membandingkan isi
sebuah variabel dengan beberapa nilai. Jika proses perbandingan tersebut menghasilkan
nilai true, maka block kode program akan dijalankan.
Kondisi SWITCH CASE terdiri dari 2 bagian, yakni perintah SWITCH dimana terdapat
nama variabel yang akan diperiksa, serta 1 atau lebih perintah CASE, masing-masing untuk
setiap nilai yang ingin diperiksa.
Berikut format dasar penulisan kondisi SWITCH CASE dalam bahasa C:
switch (nama_variabel) {
case 'nilai_1':
// Kode program yang dijalankan jika nama_variabel ==
nilai_1
break;
case 'nilai_2':
// Kode program yang dijalankan jika nama_variabel ==
nilai_2
break;
case 'nilai_3':
// Kode program yang dijalankan jika nama_variabel ==
nilai_3
break;
...
...
default:
// Kode program yang dijalankan jika tidak ada kondisi
yang terpenuhi
}
12
Di awal kode program, terdapat perintah SWITCH untuk menginput variabel yang akan
diperiksa. Kemudian terdapat beberapa perintah CASE yang diikuti dengan sebuah nilai. Jika
isi dari variabel sama dengan salah satu nilai ini, maka blok kode program akan dijalankan.
Jika ternyata tidak ada kondisi CASE yang sesuai, blok default di baris paling bawah lah
yang akan dijalankan.
Di dalam setiap block case diakhiri dengan perintah break; agar struktur CASE langsung
berhenti begitu kondisi terpenuhi. Mari langsung kita lihat contoh prakteknya.
Dalam tutorial sebelumnya, kita telah membuat program menampilkan nilai dengan
struktur IF ELSE IF. Kita akan coba konversi kode tersebut menjadi struktur SWITCH
CASE. Sebelumnya, berikut kode program menampilkan nilai dengan struktur IF ELSE IF:
1 #include <stdio.h>
2 int main(void)
3 {
4 char nilai;
5
6 printf("Input Nilai Anda (A - E): ");
7 scanf("%c",&nilai);
8
9 if (nilai == 'A' ) {
10 printf("Pertahankan! \n");
11 }
12 else if (nilai == 'B' ) {
13 printf("Harus lebih baik lagi \n");
14 }
15 else if (nilai == 'C' ) {
16 printf("Perbanyak belajar \n");
17 }
18 else if (nilai == 'D' ) {
19 printf("Jangan keseringan main \n");
20 }
21 else if (nilai == 'E' ) {
13
22 printf("Kebanyakan bolos... \n");
23 }
24 else {
25 printf("Maaf, format nilai tidak sesuai \n");
26 }
27 return 0;
28 }
Program yang sama bisa dikonversi ke dalam bentuk SWITCH CASE berikut:
#include <stdio.h>
1
2
int main(void)
3
{
4
char nilai;
5
6
printf("Input Nilai Anda (A - E): ");
7
scanf("%c",&nilai);
8
9
switch (nilai) {
10
case 'A':
11
printf("Pertahankan! \n");
12
break;
13
case 'B':
14
printf("Harus lebih baik lagi \n");
15
break;
16
case 'C':
17
printf("Perbanyak belajar \n");
18
break;
19
case 'D':
20
printf("Jangan keseringan main \n");
21
break;
22
case 'E':
23
printf("Kebanyakan bolos... \n");
24
break;
25
default:
14
26 printf("Maaf, format nilai tidak sesuai \n");
27 }
28
29 return 0;
30 }
31
Hasil kode program:
15
untuk kondisi yang lebih kompleks seperti perbandingan dengan tanda lebih besar dari ” > “,
maupun penggabungan kondisi.
Kita tidak bisa membuat struktur CASE seperti berikut:
1 case > '90':
2 printf("Pertahankan! \n");
3 break;
Kondisi perbandingan di atas hanya bisa ditulis menggunakan struktur IF.
Sehingga jika kondisi yang diperiksa cukup rumit, tetap harus menggunakan struktur IF
ELSE IF. Struktur SWITCH CASE hanya cocok dipakai untuk operasi perbandingan
sederhana, dimana nilai yang diperiksa hanya terdiri dari nilai yang tetap.
16
BAB III
PENUTUP
3.1 KESIMPULAN
Algoritma percabangan adalah salah satu instruksi dalam algoritma yang digunakan
untuk memberikan pilihan kepada program perintah mana yang harus diproses dan perintah
mana yang harus dilewati sesuai dengan kondisi yang diberikan.
Di dunia bahasa pemrograman atau algoritma, instruksi agar alur proses program bisa
loncat menuju baris instruksi tertentu sesuai dengan kondisi yang diberikan, itu disebut
dengan instruksi percabangan, pemilihan atau flow control.
17
DAFTAR PUSTAKA
http://referensisiswa.blogspot.com/2018/09/algoritma-percabangan-12-3-kondisi.html
https://www.academia.edu/5978533/Algoritma_Dan_Pemrograman
http://student.blog.dinus.ac.id/yolandatania1/2017/12/28/dasar-pemrograman-analisis-
kasus/ Diakses pada 30 September 2019
https://www.duniailkom.com/tutorial-belajar-c-percabangan-kondisi-switch-case-bahasa-c/
Diakses pada 15 Oktober 2019
18