SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
www.csa-interganesha.com
Judul
Penulis
Level
Hak
Kategori

Tutorial Struktur Pemilihan Algoritma

: Struktur Pemilihan (If then)
: Edi Casnadi
: Basic
: csa-interganesha / www.csa-interganesha.com
: Public

STRUKTUR PEMILIHAN (IF .... THEN)

Gambar 1 Pilihan jurusan kuliah
Seringkali suatu instruksi hanya bisa dikerjakan, jika ia dapat memenuhi suatu
persyaratan tertentu. Oleh karena itu, komputer tidak lagi mengerjakan instruksi
secara runtunan saja, tetapi berdasarkan syarat logika yang dipenuhi yaitu true atau
jika tidak dipenuhi maka logika tersebut adalah false.

1.

Pendahuluan

Dalam menentukan pemilihan harus mempunyai syarat-syarat kondisi tertentu di
dalam pemilihan dengan cara membandingkan dua pernyataan tersebut. Hal yang
terpenting bagi kita, harus pandai menganalisa masalah yang ada, artinya menentukan
kondisi boolean (bernilai true atau false) dan menentukan suatu aksi/statement yang
dilakukan jika kondisi tersebut berlaku (memenuhi syarat).
Dalam algoritma terdapat dua pemilihan yaitu
1. if (…) then
2. switch (…) case

Created By Edi Casnadi - IM

1
www.csa-interganesha.com

2.

Tutorial Struktur Pemilihan Algoritma

Struktur if (…) then

Bentuk umum algoritma pemilihan yaitu:
if (kondisi) then
statement
end_if
Contoh kondisional lengkap dengan pseudocode:
if (nilai=80) then
println(“Anda Lulus Ujian”)

//statement

end_if

Bentuk umum pemilihan dengan flowchart

benar

kondisi

salah

Statement_1

stop

Gambar 2 Flowchart pemilihan

Pemilihan/kondisional yaitu untuk melakukan proses pengujian, dalam pengambilan
suatu keputusan, baik false maupun true guna mengeksekusi suatu blok
instruksi/statement, yang terdiri dari satu blok instruksi atau beberapa instruksi secara
sekaligus.
Misal untuk menentukan indeks prestasi dalam matakuliah algoritma, apakah seorang
mahasiswa akan mendapatkan indeks dengan mutu: A, B, C, D atau E tergantung
atau ketentuan dari kondisi nilainya.
Ketentuan nilai sebagai berikut:
jika nilai > 90 maka indeks=“A”
jika nilai > 85 maka indeks=“B”
Created By Edi Casnadi - IM

2
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

jika nilai > 75 maka indeks=“C”
jika nilai > 55 maka indeks=“D”
jika nilai < 54 maka indeks=“E”
Keterangan:
coba kita lihat persoalan di atas terdapat suatu syarat bahwa jika nilai>90 maka akan
mendapatkan indeks=“A”, tetapi jika nilai>85 maka mendapatkan indeks=“B”, tetapi
jika nilai>75 maka mendapatkan indeks=“C”, tetapi jika nilai>65 maka mendapatkan
indeks=“D", tetapi jika nilai <54 maka mendapatkan indeks=“E”.
Jelaslah bahwa masalah, dalam menentukan suatu indeks di atas yang tergantung dari
ketentuan nilainya. Setelah kita melakukan analisis dengan suatu nilai dengan
kategori tertentu dan memenuhi syarat(kondisi true) tertentu. Dengan adanya suatu
syarat tersebut maka hal yang terpenting dari pemilihan ini yaitu suatu kondisi
terpenuhi atau benar alias true maka kondisi tersebut akan dikerjakan, tetapi jika
kondisi tersebut tidak terpenuhi salah atau false maka kondisi tersebut tidak bisa
dilaksanakan.

3.

Pemilihan dalam bahasa Java

Terdapat beberapa pemilihan atau disebut juga percabangan, untuk jenis pemilihan
dalam bahasa Java sebetulnya ada beberapa hal, yaitu:
1. Pernyataan if .. then yang terdiri dari
- if ( kondisi ) { statement}
- if ( kondisi ) { statement_1} else {statement_2}
2. Pernyataan switch.. case
Pernyataan ini, kita akan bahas lebih lanjut pada pembahasan switch..case
Bentuk umum pelilihan dalam bahasa Java
if ( kondisi) {
Statement
}
Contoh: ditulis hanya sebagian program Java
if (nilai==80) {
System.out.println(“Anda Lulus Ujian”);

// statement

}

Catatan:
Untuk penulisan if, harus menggunakan guruf kecil.

Created By Edi Casnadi - IM

3
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Perbandingan bentuk umum algoritma pemilihan atau kondisional dengan penulisan
dalam bahasa Java, dapat dilihat pada tabel, berikut ini:

Tabel 1 Perbandingan kondisi/pemilihan
PEMILIHAN / KODISIONAL
PEMILIHAN / KODISIONAL
Algoritma
Bahasa Java
Satu kondisi
Satu kondisi
if (kondisi) then
Statement_1
End_if

if ( kondisi) {
Statement_1
}

Dua kondisi

Dua kondisi

If (kondisi1) then
Statement_1
else if (kondisi2) then
Statement_2
End_if

if ( kondisi1) {
Statement_1
} else if (kondisi2) {
Statement_2
}

End_if
Tiga kondisi
If (kondisi1) then
Statement_1
else if (kondisi2) then
Statement_2
else if (kondisi3) then
Statement_3
end if

Tiga kondisi
if ( kondisi 1) {
Statement_1
} else if (kondisi2) {
Statement_2
} else if (kondisi3) {
Statement_3
}

end if
dan seterusnya……………

4.

Pemilihan dengan bantuan else (selain itu)

Dalam pemilihan tidak akan terlepas dari suatu kondisi yang true saja, tetapi pilihan
juga ada yang tidak memenuhi kondisi apa pun, kemudian apa yang harus dilakukan?.
Ya harus Anda lakukan yaitu mencari supaya hal tersebut tidak terjadi kebuntuan.
Untuk menanggulangi kesulitan tersebut, maka dalam algoritma pemilihan ada suatu
pernyataan, yaitu else.
Created By Edi Casnadi - IM

4
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Struktur penulisan else, yaitu if … then… else,
diartikan sebagai berikut : jika…maka..selain itu.

dalam bahasa Indonesia bisa

Bentuk umum algoritma pemilihan if then else, yaitu:
if ( kondisi ) then
Statement_1
else
Statement_2
End_if
Contoh:
if ( nilai=80 ) then
println(“Anda Lulus Ujian”)
else
println(“Anda Gagal Ujian”)
End_if
Keterangan:
Pada “Anda Lulus Ujian” akan dilaksanakan jika kondisi=true (nilai=80), tetapi jika
kondisi=false, maka secara otomatis akan menampilkan “Anda Gagal Ujian“.
Perhatikan bahwa “else” menyatakan ingkar(not) dari kondisi dalam pemilihan.
Bentuk umum pemilihan (if then else) dalam bahasa Java yaitu:
Contoh:
if (nilai==80) {
println(“Anda Lulus Ujian”);
} else {
println(“Anda Gagal Ujian”);
}
Bentuk umum pemilihan dengan bantuan else dalam algoritma flowchart, yaitu:

benar

salah
kondisi

Statement_2

Statement_1
Stop

Gambar 4 Bagan alir pemilihan/kondisi dengan dua kondisi
Created By Edi Casnadi - IM

5
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Contoh-contoh algoritma pemilihan if then else, yaitu:
ALGORITMA BilGanjil_Genap
{menampilkan bilangan genap dan ganjil dari inputan variabel bil, dan
dengan bil mod 2=1 maka bilangan ganjil, untuk bil mod 2=0 maka
bilangan genap}
DEKLARASI
bil  integer
DESKRIPSI
read(bil  2)
//input data
if ( bil mod 2 = 0 ) then
println(“bilangan genap”)
else
println(“bilangan ganjil”)
end_if
End_algo

Belajar melalui contoh dalam pemilihan if then else, yaitu:
Diketahui suatu bilangan deret, seperti berikut:
1, 2 , 3 , 4 ,5 ,6 ,7 ,8 ,9 ,10.
Tugas Anda sekarang adalah menampilkan mana yang termasuk bilangan bulat dan
mana yang termasuk bilangan ganjil, sesuai dengan data bilangan deret di atas!.
Jawaban dengan analisis, yaitu:
Misalkan: data di atas tersebut, kita inisialkan dengan kata “bil”. Berarti “bil” berisi
data di atas, kemudian bil dibagi dengan 2 sama dengan 0 maka menghasilkan
bilangan bulat, jika hasil tersebut menghasilkan sisa bagi sama dengan 1, maka
bilangan tersebut termasuk bilangan ganjil.
Tulis data bilangan deret, yaitu:
bil = 1, 2 , 3 , 4 ,5 ,6 ,7 ,8 ,9 ,10. jika
bil mod 2 = 0
bil mod 2 = 1

Created By Edi Casnadi - IM

// jika bil dibagi 2 = 0 maka bil adalah bilangan
genap karena sisa baginya 0, misal 2 mod 2=0
//bil dibagi 2=1 bilangan ganjil karena menghasilkan
sisa = , misal 3 mod 2 = 1

6
www.csa-interganesha.com

Jadi hasil perhitungan tersebut yaitu:
Bilangan Genap
2
4
6
8
10

Tutorial Struktur Pemilihan Algoritma

Bilangan Ganjil
1
3
5
7
9

Dalam pemilihan atau kondisional ini, dibagi menjadi beberapa kasus pemilihan, hal
ini untuk bertujuan mempermudah dalam mempelajari algoritma pemilihan tersebut,
algoritma pemilihan dibagi menjadi beberapa kasus pemilihan, yaitu satu kondisi,
dua kondisi dan tiga kondisi atau lebih dari tiga kondisi.
Contoh pemakaian pernyataan ”else” dalam bahasa Java
public class Kelulusan_mhs {
static int nilai ;
//variabel global
static String nama, keterangan;
public static void hitung(){
nama = "edi";
nilai=80;
if (nilai>=60)
keterangan ="lulus";
else
keterangan = "tidak lulus";
}
public static void hasil(){
System.out.println("Nama
: " +nama);
System.out.println("Keterangan : "+ keterangan);
} //akhir method hasil()
public static void main(String[] args) {
hitung(); //memanggil method hitung()
hasil();
//memanggil method hasil()
}
}

Created By Edi Casnadi - IM

7
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Hasil output
Nama
: edi
Keterangan : lulus

5.

Pemilihan satu kondisi

Pemilihan satu kondisi, sebetulnya sudah kita pelajari, tetapi untuk lebih paham lagi,
alangkah baiknya kita membelajari lagi. Pemilihan satu kondisi yaitu, terdapat suatu
kondisi yang hanya satu pada pemilihan.
Berikut bentuk umum algoritma pemilihan satu kondisi, yaitu
if (kondisi) then
Statement_1
End_if
Keterangan:
 if, diartikan awal dari percabangan atau awal dari kondisi, yang diartikan dalam
bahasa Indonesia yaitu jika
 ( kondisi ), merupakan tempat dari kondisi suatu logika (true atau false) yang
berarti memenuhi logika atau tidak, tetapi kondisi ini akan dijalankan jika
kondisinya true atau benar
 then, diartikan dalam bahasa Indonesia yaitu maka, artinya setelah kondisi
bernilai true atau benar, kemudian then akan kerjakan dan akan menuju statement.
 Statement, merupakan tempat hasil kondisi jika benar, maka statement ini yang
akan dikerjakan, sebetulnya boleh lebih dari satu statement.
 End_if, merupakan akhir atau batasan dari pernyataan if
Kalau kita gabungkan pernyataan dari if ( kondisi ) then yang berarti (jika – maka).
Berikut algoritma pemilihan menggunakan flowchart.

Benar

kondisi

salah

Statement

stop
Gambar 5 Flowchart peilihan/kondisi dengan satu kondisi
Created By Edi Casnadi - IM

8
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Belajar melalui contoh-contoh algoritma pemilihan satu kondisi
 if ( x > 50 ) then
println(“ lima puluh”)
end_if


if ( nilai < 100 ) then
println(“ kurang dari 100 “ )
end_if



if ( x =50 ) then
x = x + 50
end_if



if ( x>80 and y>90 ) then
z=x+y
end_if



if ( ada= true) then
read(a)
println(a)
end_if



if ( not ada= false) then
read(a)
println(a)
end_if

Pemilihan satu kondisi dalam bahasa Java
Di dalam percabangan if .. then di dalam bahasa Java, menyatakan akan dieksekusi
bila memenuhi syarat tertentu, yaitu:
Bentuk umum pemilihan satu kondisi dalam bahasa Java, sebegai berikut:
if (kondisi==true) {
System.out.println(“Statement_1”);
}

Belajar melalui contoh-contoh pemilihan satu kondisi
Contoh-1, membandingkan angka yang berbeda
ALGORITMA PembandingAngka
{ membandingkan nilai antara a dan b jika b kurang dari a maka akan di
cetak dengan tipe data bilangan bulat}

Created By Edi Casnadi - IM

9
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

DEKLARASI
a, b  integer
DESKRIPSI
a  20
b  16
if ( b < a) then
println(” b kurang dari a”)
End_if
End_algo
Keterangan:
Algoritma di atas, yaitu membandingkan variabel a dan b, kemudian variabel a diisi
dengan 20, variabel b diisi dengan 16, setelah itu terdapat suatu kondisi, yang
bertujuan untuk menentukan apakah kondisi tersebut benar atau salah.
Dengan kondisi jika b kurang dari a atau ( b <a ) maka kondisi tersebut bernilai benar
dan akan mencetak kata ”b kurang dari a”, tetapi sebaliknya jika yang dimasukan b
lebih besar dari a, maka tidak mencetak apa-apa.
Contoh-2, membandingkan suatu karakter
ALGORITMA KesamaanChar
{ membandingkan nilai ans, jika ans sama denngan Y maka dicetak
dengan tipe data char}
DEKLARASI
ans  char
DESKRIPSI
ans  ’y’;
If (ans=”y”) then
println(”benar”)
end_if
End_algo

//jika ans sama dengan y maka tampil Iya

Keterangan:
Algoritma di atas, untuk membandingkan sebuah karakter yang disimpan di variabel
ans, jika ans diisi dengan ”y” kecil, maka kata ”benar” tetapi jika ans diisi dengan
selain y kecil, maka dianggap salah sehingga tidak adanya tampilan keluaran.
Coba algoritma di atas, kita terjemahkan dalam algoritma flowchart, seperti gambar
dibawah ini.
Created By Edi Casnadi - IM

10
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Menentukan bilangan nol dalam algoritma flowchart
{ Algoritma kondisi yaitu :menentukan
Start
suatu kondisi tertentu, jika kondisi
tersebut memenuhinya maka statement
akan dijalankan }
Integer bil

bil = 0
ya
bil = 0
tidak

variabel ini
bernilai NOL

Stop

Gambar 6 Flowchart Menentukan variabel nol

Latihan-latihan pemilihan dalam bahasa Java
Latihan-1
Menentukan bilangan nol dalam bahasa Java,yaitu:
public class BilNol {
public static void main(String[] args) {
int bil = 0;
if (bil==0)
System.out.println("variabel ini bernilai NOL");
}
}
Hasil output
variabel ini bernilai NOL

Latihan-2
Penyelesaian bilangan genap dalam bahasa Java, yaitu:
public class Bil_Genap {
public static void main(String[] args) {
int bil = 4;
Created By Edi Casnadi - IM

11
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

if (bil % 2 == 0) {
System.out.println(" bilangan genap");
System.out.print(bil);
}
}
}
Hasil Output
4 ini bilangan genap

Keterangan:
Maka akan menampilkan data pada alat keluaran, seperti hasil di atas. Ingat lambang
% merupakan mod yang artinya sisa bagi, misalnya 4 mod 2 = 0, maka pernyataan di
atas akan mencetak bilangan genap saja.

6.

Pemilihan dua kondisi

Pemilihan dua kondisi yaitu pemilihan yang terdapat dua kondisi untuk
penyeleksianya. Pemilihan dua kondisi digunakan untuk mengatasi jika kondisi
pertama tidak memenuhi.
Bentuk umum pemilihan dua kondisi, dalam algoritma pseudo code, yaitu:
If ( kondisi1) then //kondisi pertama
Statemen_1
else if (kondisi2 ) then //kondisi kedua
Statement_2
end_if
end_if
Contoh:
If ( bilangan>0) then
//kondisi pertama
println(“Bilangan Positif”)
else if (bilangan<0 ) then //kondisi kedua
println(“Bilangan Negatif”)
end_if
end_if

Created By Edi Casnadi - IM

12
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Bentuk umum pemilihan dua kondisi, dalam bahasa Java, yaitu:
if ( kondisi1) {
//kondisi pertama
Statemen_1
} else if (kondisi2 ) { //kondisi kedua
Statement_2
}

Contoh:
if ( bilangan>0) {
//kondisi pertama
System.out.println(“Bilangan Positif”);
} else if (bilangan<0 ) { //kondisi kedua
System.out.println(“Bilangan Negatif”);
}

Bentuk umum pemilihan dua kondisi dalam algoritma flowchart, yaitu:

Kondisi1

salah

benar
Kondisi2
benar

salah

Statement1
Statement1

End
Gambar 7 Flowchart pemilihan dua kondisi

Created By Edi Casnadi - IM

13
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Contoh algoritma pemilihan
Contoh-1
Misalkan: diketahui kedua bilangan bulat tersimpan dalam variabel A dan B kemudian
membandingkan antara A dan B.
Coba kita analisis contoh di atas, yaitu:
Diketahui variabel A dan B di baca dua buah bilangan bulat dari piranti masukan.
Jika A > B, maka bilangan terbesar adalah A
Jika B > A, maka bilangan terbesar adalah B
Berikut algoritma maksimum dalam bilangan bulat.
ALGORITMA Maksimum
{ Menentukan bilangan terbesar dari dua buah bilangan bulat }
DEKLARASI
A, B  integer
DESKRIPSI
read(A, B,)
if ( A > B ) then
println(“Bilangan terbesar A”)
else if (A<B) then
println(“Bilangan terbesar B”);
End_if
End_if
End_algo

Belajar melalui latihan pemilihan dua kondisi dalam algoritm dan bahasa Java,
yaitu:
Latihan-1,
Menentukan bilangan nol dan bukan bilangan nol, penyelesaian dalam algoritma,
yaitu:
ALGORITMA BilanganlNol
{ menentukan suatu kondisi tertentu, jika kondisi tersebut memenuhinya
maka statement akan dijalankan }

Created By Edi Casnadi - IM

14
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

DEKLARASI
bil  integer
DESKRIPSI
bil  0
if (bil == 0 ) then
println(“Variabel ini bernilai NOL”)
else if ( bil > 0) then
println(“Variabel ini bernilai lebih besar NOL”)
end_if
end_if
End_algo
Pemilihan dengan bilangan nol dalam bahasa Java, yaitu:
public class BilanganlNol {
public static void main(String[] args) {
int bil = 0;
if ( bil==0 )
System.out.println("variabel ini bernilai NOL");
else if ( bil>0 )
System.out.println("variabel ini bukan bernilai NOL");
}
}

Latihan-2 dalam bentuk method
Menentukan bilangan genap-ganjil dalam bahasa Java, yaitu: sesuai dengan algoritma
yang sudah ditulis diatas maka dibwah ini contoh dalam bahasa Java dalam bentuk
method.
import java.swing.*;
public class BilanganGanjilBulat {
static void Bilangan ( int a ){
// method bilangan
if (a % 2 == 0) {
System.out.println("Bilangan Genap = " + a );

Created By Edi Casnadi - IM

15
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

} else if ( a % 2 == 1){
System.out.println("Bilangan Ganjil = " + a );
}
}
//akhir ari method Bilangan
public static void main(String[] args) {
int b;
String angka1;
angka1 = JOptionPane.showInputDialog("Masukan angka1 ");
b = Integer.parseInt(angka1);
//konversi string ke integer
perkalian(b);
// memanggil method
}
}

7.

Pemilihan tiga kondisi atau lebih

Dalam kehiupan, kita selalu dihadapkan dalam beberapa pilihan, di dalam program
juga sama untuk memilih dari tiga pilihan, struktur If – then – else if – then .. else,
untuk menangani lebih dari satu kondisi sebagaimana halnya pada masalah dengan
dua kondisi.
Bentuk umum algoritma pemilihan dalam tiga kondisi
if (kondisi1) then
Statement_1
else if ( kondisi2 ) then
Statement_2
else if ( kondisi3) then
Statement_3
end_if
end_if
end_if
Bentuk umum algoritma dalam tiga kondisi atau lebih
if (kondisi_1) then
Statement_1
else if ( kondisi_2 ) then
Statement_2
else if ( kondisi 3) then
Statement_3
else if (kondisi 4 ) then
Statement_4
Created By Edi Casnadi - IM

16
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

else
Statement_5
end_if
end_if
end_if
end_if

Bentuk umum pemilihan flowchart (if …then else if then else), yaitu:

benar

kondisi1

benar

salah

kondisi2

salah

Statement1
salah
Kondisi3

Statement2

benar

Statement3

stop

Gambar 8 Flowchart peilihan/kondisi dengan tiga kondisi

Bentuk umum algoritma dalam emapat kondisi:
if (kondisi1 ) then
Statement1
else if (kondisi2) then
Statement20
else if (kondisi3) then
Statement3
else if (kondisi4) then
Statement4
end_if
end_if
Created By Edi Casnadi - IM

17
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

end_if
end_if
Untuk algoritma lebih dari empat kondisi maka Anda tinggal menambahkan else if dan
di akhiri dengan end_if pada baris selanjutnya.

Belajar melalui contoh algoritma pemilihan, yaitu:
Analisis-1
Menentukan suatu bilangan, apakah termasuk bilangan positif, negatif atau nol.
Misalkan bilangan bulat itu adalah Bil
Jika Bil > 0 maka bilangan positif
Jika Bil < 0 maka bilangan negatif
Jika Bil = 0 maka bilangan nol
Dalam algoritmanya, yaitu:
ALGORITMA Jenis_Bilangan
{ mencetak pesan “bilangan positif” jika sebuah bilangan bulat yang
dibaca dari piranti masukan > 0, atau “bilangan negative” jika
bilangan tersebut <0, atau “nol” jika bilangnan tersebut = 0 }
DEKLARASI
bil  integer
DESKRIPSI
read(bil)

// memasukan bilangan misalnya 3

if (bil>0) then
// kondisi pertama bil >0
println(“bilangan positif”)
else if ( bil <0 ) then
// kondisi kedua bil < 0
println(“bilngan negatif”)
else if ( bil=0) then
// kondisi ketiga bil=0
println(“nol”)
end_if
end_if
end_if
End_algo
Pemilihan dalam Java ini bertujuan untuk memilih salah satu dari tiga kemungkinan
yang muncul, yaitu apakah bilangan tersebut termasuk bilangan nol, bilngan negatif
atau bilangan positif, sesuai dengan kondisi yang berlaku.

Created By Edi Casnadi - IM

18
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Dengan rumus bentuk umumnya dari bahasa Java, yaitu:
If (kondisi1) {
Statement_1
} else if (kondisi2) {
Statement_2
}else if (kondisi3) {
Statement_3
}

Keterangan:
Jika kondisi1 dievaluasi bernilai true/benar, maka Statement1 yang di eksekusi,
sedangkan jika kondisi1 dievaluasi bernilai false, maka ke kondisi2 berikutnya
berupa Statement2 yang dieksekusi, tetapi jika yang dievaluasi pada kondisi2 bernilai
salah/false maka berlanjut pada kondisi 3 dan jika kondisi 3 memenuhi kondisi maka
statement3 yang akan dieksekusi tetapi kalau tidak ada, maka tidak ada yang
ditampilkan satupun statement di atas.

Belajar melalui contoh-contoh dalam algoritma dan bahasa Java, yaitu:
Contoh-1, algoritma untuk menentukan bilangan positif, negatif, atau nol, yaitu
ALGORITMA Jenis_Bilangan
{untuk menentukan bilangan yang bernilai negatif, positif, nol..... }
DEKLARASI
bil  integer
ket  String
DESKRIPSI
read( bil )
if (bil > 0 )
ket = bilangan positif
else if (bil <0 )
ket = bilangan negatif
else
ket = bilangan nol
end_if
end_if
print( ket )

{ input dari keyboard }
{ verifikasi kondisi 1 }
{verifikasi kondisi 2 }

{menampilkan variabel ket }

End_algo

Created By Edi Casnadi - IM

19
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Untuk menentukan sifat bilangan dalam bahasa Java, yaitu:
import java.io.*;
public class Pembandingan {
static int bil;
static String ket, angka;

public static void proses() throws IOException{
InputStreamReader reader = new InputStreamReader(System.in);
BufferedReader input = new BufferedReader(reader);
System.out.print("Masukan sebuah angka ? ");
angka = input.readLine();
bil = Integer.parseInt(angka);
if (bil >0)
ket = ”bilangan positif” ;
else if (bil <0 )
ket = ”bilangan negatif”;
else
ket = ”bilangan nol ”;
System.out.println( ket );

{verifikasi kondisi 1 }
{verifikasi kondisi 2 }

{ menampilkanl ket }

}

public static void main(String args[]) throws IOException{

proses();
}
}

Contoh-2 ,
Matematika untuk menentukan rumus abc dalam algoritma, yaitu:
ALGORITMA Rumus_ABC
{menentukan dari persamaan kuadrat dengan ketentuan D<0 akar-akar
persamaan imaginer, D = akar-akar sama, D > dua akar berlainan}
DEKLARASI
a, b, c, d, x1, x2  double
Created By Edi Casnadi - IM

20
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

DESKRIPSI
a=4, b=-13, c =-12
d = b*b – (4*a*c)
if ( D<0 ) then
print("Akar-akar persamaan imaginer")
else if ( D=0 ) then
print("Akar-akar pers. nyata tetapi kembar.");
x1 =

b D
2*a

print("x1 = x2 = " + x1)
else
print("Akar-akar pers. nyata dan berbeda")

b D
2*a
b D
x2 =
2*a

x1 =

end_if
end_if
print(x1,x2)
End_algo
Pemilihan untuk kasus rumus abc dalam bahasa Java, yaitu:
public class abc{
public static void main(String[] args) {
double a = 4;
double b = -13;
double c = -12;
double D = b*b – (4*a*c);
double x1, x2;
System.out.println("Pers. kuadrat a*x^2+b*x+c=0, di mana");
System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("c = " + c);
System.out.println("Menerapkan ABC diketahui bahwa : ");
//kondisi untuk determinan
if (D<0){
System.out.println("Akar-akar persamaan imaginer.");
Created By Edi Casnadi - IM

21
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

}else if (D==0){
System.out.println("Akar-akar pers nyata tetapi kembar");
x1 = -b/(2*a);
System.out.println("x1 = x2 = " + x1);
}else{
System.out.println("Akar-akar pers. nyata dan berbeda.");
x1 = (-b+Math.sqrt(D))/(2*a);
x2 = (-b-Math.sqrt(D))/(2*a);
System.out.println("x1 = " + x1 + " x2 = " + x2);
}
}
}
Belajar melalui latihan-latihan dalam bahasa Java
latihan-1
Dalam bahasa Java, untuk menentukan nilai pembayaran yang didiskon 20% jika
pembelian diatas 100, yaitu:
import javax.swing.*;
public class Pembelian{
static int dis, beli; // pendefinisian variabel global
static float harga,total;
public static void masukan() {
String bl=JoptionPane.showInputDialog(”Masukan banyak barang?”);
String hr=JoptionPane.showInputDialog(”Masukan harga?”);
beli = Integer.parseInt(bl);
harga = Float.parseFloat(hr);
}
public static void keluaran(){
total=0;
if (beli >= 100){
total=(harga*beli);
dis=(total*20/100);
dis = total-dis;
System.out.println (total+"Diskon = 20% jadi"+dis);
}else {
total=(harga*beli);
dis=(total*5/100);
dis = total-dis;
System.out.println (total+ "Diskon = 5% jadi "+dis);

}
}
Created By Edi Casnadi - IM

22
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

public static void main (String[ ] args) {
System.out.println ("PT ANGIN RIBUT”);
keluaran();
masukan();
}
}

Latihan-2
Dalam bahasa Java, Menentukan nilai dan predikat dari sebuah data tertentu, jika nilai
>=80 maka A, nilai >=60 maka B, dan seterusnya, yaitu:
public class NilaiUjian {
static int nilai;
// pendefinisian variabel
static String ket;
public static void DafNilai () {
nilai = 75;
if (nilai >= 80)
ket="Predikat A";
else if (nilai >= 69)
ket="Predikat B";
else if (nilai >= 56)
ket="Predikat C";
else if (nilai >= 40)
ket="Predikat D";
else
ket="Predikat E";
} //akhir dari method DafNilai()

public static void hasil () {
System.out.println ("Nilai = " + nilai);
System.out.println (”Keterangan = " + ket);
} //akhir dari method hasil()
public static void main (String[ ] args) {
DafNilai();
//memanggil method
hasil();
}
}

Created By Edi Casnadi - IM

23
www.csa-interganesha.com

8.

Tutorial Struktur Pemilihan Algoritma

Pemilihan bersarang (if bersarang)

Pemilihan bersarang merupakan suatu pemilihan yang di dalam pemilihan terdapat
pemilihan lagi, artinya di dalam struktur if (....) then terdapat struktur if (...) then lagi
tanpa kata else. Inilah alasan kenapa dikatakan pemilihan bersarang,
Bentuk umum algoritma pemilihan bersarang, yaitu:
If (kondisi) then
print(“Statement biasa”)
if (kondisi bersarang) then
print(“Statement bersarang”)
end_if
end_if
contoh algoritma pemilihan bersarang dibawah ini:
if (ada= true ) then
if (a < b) then
print(“a lebih besar b”)
end_if

// if bersarang
//statement bersarang

end_if

Keterangan:
Kita perhatikan dalam menuliskan if bersarang di atas, tidak ada kata else melainkan
ditulis secara langsung dengan pernyataan if then lagi secara langsung, nah inilah
kenapa disebut pemilihan bersarang, dikarena dalam pemilihan terdapat pemilihan lagi
(dalam if then terdapat if then lagi).

Created By Edi Casnadi - IM

24
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Algoritma If (... ) then bersarang dalam bentuk flowchart, sebagai berikut:

false/salah

kondisi

salah

true/benar

Kondisi

benar

bersarang

Statement3

Statement2

Statement1

end

end
Gambar 9 Flowchart peilihan/kondisi dengan tiga atau lebih kondisi

Keterangan:
Jika kita lihat bagan di atas hampir mirip, seperti susunan bagan pemilihan dua
kondisi, tetapi itu sangat berbeda, coba kita perhatikan. Untuk pemilihan dua kondisi,
yaitu pada saat ke arah kondisi ke dua maka kondisi sebelumnya harus bernilai
salah/false. Untuk pemilihan bersarang yaitu pada saat ke arah kondisi kedua maka
kondisi sebelumnya harus bernilai benar/true. Coba perhatikan baik-baik perbedaan
struktur bagan kondisi bersarang dengan kondisi pada pemilihan lebih dari dua.
Keduanya sangat berbeda dan tergantung pada syarat pemilihan dua kondisi tersebut.
Belajar melalui contoh-contoh untuk if bersarang, yaitu
Contoh1, menentukan harga diskon, yaitu:
ALGORITMA Harga_Diskon
{ untuk menentukan harga diskon dan mengecek anggota bukan, jika
memenuhi keduanya maka akan didiskon, sebaliknya tidak didiskon }
DEKLARASI
harga, jml  integer
tot  float
Created By Edi Casnadi - IM

25
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

anggota  string
DESKRIPSI
tot  0
jml 0
harga  100000
if ( harga >=100000) then
anggota  ”yes”
if (anggota=”yes”) then
println("Anggota");
jml  4;
println("Diskon");
tot  (harga*jml) - ((harga*jml*50)/100);
println("Harga di diskon 50%");
println("Harga diskon Rp "+ tot);
else
println("Bukan Anggota");
end_if
else
jml=4;
println("Tanpa di diskon");
tot= harga*jml;
println("Harga Rp "+ tot);
end_if
End_algo
Pemilihan bersarang dalam bahasa Java
public class harga_diskon {
static int harga, jml=0;
static float tot=0;
static String anggota;
public static void masukan(){
harga=100000;
anggota="yes";
jml=4;
}
public static void proses(){
System.out.println("harga = " + harga*jml);
Created By Edi Casnadi - IM

26
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

if (harga>=100000) {
if (anggota=="yes") {
System.out.println("Anggota");
System.out.println("Diskon");
tot= (harga*jml)-((harga*jml*50)/100);
System.out.println("Harga di diskon 50%");
}else {
System.out.println("Bukan Anggota");
}
}else{
System.out.println("Tanpa di diskon");
tot= harga*jml;
}
}
public static void keluaran(){
System.out.println("Harga diskon Rp "+ tot);
}
public static void main(String[] args) {
masukan();
proses();
keluaran();
}
}
Hasil output
harga = 400000
Diskon
Harga di diskon 50%
Harga diskon Rp 200000.0
Process completed.

Belajar melalui latihan-latihan dalam bahasa Java
Latihan-1, Pemilihan bersarang untuk seleksi jadi karyawan bahasa Java, yaitu:
public class data {
public static void karyawan(){
int umur = 23;
String pendidikan = "diploma";
Created By Edi Casnadi - IM

// pendefinisian variabel

27
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

System.out.println ("Umur = " + umur);
System.out.println ("Pendidikan = " + pendidikan);
if (umur <= 30) {
if (pendidikan == "diploma")
System.out.println ("Diterima menjadi karyawan Gol C");
else if (pendidikan=="sarjana")
System.out.println ("Diterima menjadi karyawan Gol B");
else
System.out.println ("Tidak diterima menjadi karyawan");
} else {
System.out.println ("Maaf umur Anda ketuaan");
}
}
}
public class PendKaryawan { //program utama
public static void main (String[ ] args) {
data dt = new data();
dt.karyawan();
}
}
Hasil output:
Umur = 23
Pendidikan = diploma
Diterima menjadi karyawan Gol C
Process completed.
Latihan-2, Bersarang untuk daftar menu buah-buahan dalam bahasa Java, yaitu:
import javax.swing.*;
class menu {
static int pilih; //variabel global
public static void daftar(){
System.out.println ("DAFTAR HARGA BUAH-BUAHAN");
System.out.println ("1. Mangga");
System.out.println ("2. Apel ");
System.out.println ("3. Nanas");
System.out.println ("4. Alpukat");
String pil=JOptionPane.showInputDialog("Pilihan Anda ? ");
Created By Edi Casnadi - IM

28
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

pilih=Integer.parseInt(pil);
}
public static void harga(){
if (pilih==1) {
System.out.println ("Anda pilih buah Mangga");
System.out.println ("Harga 25000/kg");
}else if (pilih==2){
System.out.println ("Anda pilih buah Apel");
System.out.println ("Harga 20000/kg");
}else if (pilih==3){
System.out.println ("Anda pilih buah Nanas");
System.out.println ("Harga 15000/kg");
}else{
System.out.println ("Anda pilih buah Alpukat ");
System.out.println ("Harga 18000/kg");
}
}
}
public class HargaBuah {
public static void main (String[ ] args) {
menu mn = new menu();
mn.daftar(); //memanggil method daftar
System.out.println ("-------------------------------------");
mn.harga(); //memanggil method harga
}
}
Hasil output
DAFTAR HARGA BUAH-BUAHAN
1. Mangga
2. Apel
3. Nanas
4. Alpukat
----------------------------------------Anda pilih buah Apel
Harga 20000/kg
Process completed.

Created By Edi Casnadi - IM

29
www.csa-interganesha.com

3.

Tutorial Struktur Pemilihan Algoritma

Struktur Switch Case

Pendahuluan
Penggunaan switch sebenarnya hampir sama dengan if(…)then bertingkat(kondisi
lebih dari tiga). Kapan kita menggunakan struktur switch? yaitu untuk percabangan
yang berjumlah lebih dari dua atau lebih dari tiga kondisi. Karena itu switch case bisa
dijadikan alternatif lain dalam menyelesaikan kasus pemilihan. Penggunaan switch
case lebih tepat dibandingkan menggunakan if(…)then ketika menghadapai pemilihan
bertingkat. Switch case mempunyai kelemahan karena hanya bisa dikerjakan ketika
memenuhi beberapa syarat yaitu pembatasan dalam penggunaan tipe data seperti:
byte, short, int, ataupun char. Itulah secara singkat mengenai struktur switch case.

Switch case dalam algoritma
Pemilihan switch.. case, dimaksudkan untuk menangani banyak kemungkinan
kemunculan yang berlebihan.
Bentuk umum penulisan switch case dalam algoritma, yaitu:
Switch (ekspresi)
case <konstanta 1> :
Statement_1
case <konstanta 2> :
Statement_2
case <konstanta 3> :
Statement_3
default
Statement_4
End_switch

Keterangan:
<kondisi 1>, <kondisi 2> dan seterusnya akan bernilai benar atau salah tergantung
dari nilai ekspresinya, setiap kondisi akan diperiksa satu demi satu untuk mencari
nilai kebenarannya, mulai dari kondisi pertama( <kondisi 1> ) sampai kondisi akhir (
<kondisi 3> ) untuk ditemukannya suatu kondisi yang bernilai benar. Jika tidak
ketemu maka secara otomatis pernyataan default yang akan di eksekusi atau
ditampilkan dalam alat keluaran seperti monitor.
Sekali lagi saya katakan bahwa struktur switch case untuk menyederhanakan dalam
penulisan if-then-else yang bertingkat - tingkat. Statement switch case berisi
ungkapan (pemilih) dan sederetan statement/aksi, yang masing-masing diawali satu
atau lebih konstanta.

Created By Edi Casnadi - IM

30
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Switch case dalam bahasa Java
Bentuk umum struktur switch … case dalam bahasa Java, yaitu:
Switch (ekspresi) {
case <konstanta 1> :
Statement 1
case <konstanta 2> :
Statement 2
.
.
default :
Default Statement
}
Struktur switch case, yaitu mengevaluasi dan membandingkan ekspresi, untuk semua
konstanta case dan mengendalikan eksekusi program ke pernyataan case yang cocok.
Jika tidak ada konstanta case yang cocok dengan ekspresi maka program menuju ke
default statement jika program memberikan pernyataannya.
Hal yang perlu diperhatikan dalam analisa kasus dengan switch case adalah bahwa
ekspresi yang bisa ditangani dalam switch .. case hanya yang nilainya bisa
dienumerasi, yaitu integer (dan tipe range), boolean, dan tipe enum.
Berikut adalah tiga fitur penting dalam pernyataan switch, yaitu
1. Pernyataan switch berbeda dengan pernyataan if..then di mana switch hanya
dapat menguji kesamaan, sedangkan pernyataan if .. then dapat melakukan
evaluasi sembarang tipe ekspresi boolean. Dengan demikian, switch terlihat
seperti hanya mencocokan diantara nilai-nilai ekspresi dengan konstantakonstanta case.
2. Tidak ada konstanta case di blok case yang sama dapat mempunyai nilai identik.
Tentu saja untuk pernyataan switch bersarang (nested switch) yang diapit switch
luar dapat mempunyai konstanta yang sama dengan konstanta di switch luar
3. Pernyataan switch biasanya lebih efisien dibandingkan pernyataan if .. then
bersarang yang dalam.

Belajar melalui contoh-contoh algoritma switch case
Contoh-1,
Algoritma switch case, untuk membuat menu, yaitu:
ALGORITMA menu_pilihan
{ untuk menentukan pilihan menu untuk memudahkan pemilihan tertentu}
DEKLARASI
a, b, c, pil  Integer
DESKRIPSI
Created By Edi Casnadi - IM

31
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

println (”Pilihan Pemrograman”)
println (”1. Penjumlahan ”)
println (”2. Pengurangan ”)
println (”3. Perkalian ”)
pil = 1
//inputan bebas coba ganti-ganti angkanya 1..3
switch (pil)
case 1 :
println (” Anda pilih Penjumlahan”)
a = 3, b = 5
c=a+b
println (c)
case 2 :
println (” Anda pilih Pengurangan”)
a = 3, b = 5
c=a-b
println (c)
case 3 :
println (” Anda pilih Perkalian”)
a = 3, b = 5
c=a*b
println (c)
default:
println(” Maaf bukan pilihan ”)
end_switch
End_Algo
Contoh-2
Menentukan jenis bilangan tertentu, yaitu:
ALGORITMA PilihBilangan
{ untuk menentukan pilihan apakah bilangan nol, satu, dua dan harus sesuai
dengan statement case yang tepat}
DEKLARASI
a  integer
DESKRIPSI
a=2
//variabel a dimasukan dengan angka 2
switch (a) //melakukan seleksi terhdp variabel a dan dicocokan dgn case
case 0 :
print (” Anda pilih bilangan nol”)
case 1 :
print (” Anda pilih bilangan satu”)
Created By Edi Casnadi - IM

32
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

case 2 :
print (” Anda pilih dua”)
case 3 :
print (” Anda pilih bilangan tiga”)
default:
print (” Anda pilih bilangan default”)
end_switch
End_algo
Dalam bahasa Java, yaitu:
import javax.swing.*;
class PilihBilangan {
public static void main (String[] args ) {
int a;
String pesan = JoptionPane.showInputDialog(“masukan angka ? “);
a = Integer.parseInt(pesan); //coba anda masukan angka 2
switch (a) {
case 0 :
System.out.println(” Anda pilih bilangan nol”); break;
case 1 :
System.out.println(” Anda pilih bilangan satu”); break;
case 2 :
System.out.println(” Anda pilih bilangan dua”); break;
case 3 :
System.out.println(” Anda pilih bilangan tiga”); break;
default:
System.out.println(” Anda pilih bilangan default”);
}
}
}
Hasil output

Anda pilih bilangan dua
Anda pilih bilangan tiga
Anda pilih bilangan default

Created By Edi Casnadi - IM

33
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Keterangan:
Kenapa di dalam bahasa Java ketika di run akan muncul tiga pernyataan seperti hasil
run diatas bukan satu pernyataan saja. Sedangkan yang kita pilih a=2 dan seharusnya
yang muncul yaitu: Anda pilih bilangan dua. dikarenakan dalam bahasa Java akan
terus dilakukan sampai akhir case, untuk menanggulangi hal tersebut kita tambah
dengan pernyataan break;
Untuk setiap pernyataan diberi pernyataan break; seperti coding dibawah ini.
import javax.swing.*;
class PilihBilangan2 {
public static void main (String[] args ) {
int a;
String pesan = JoptionPane.showInputDialog(“masukan angka ? “);
a = Integer.parseInt(pesan); //coba anda masukan angka 2
switch (a) {
case 0 :
System.out.println(” Anda pilih bilangan nol”); break;
case 1 :
System.out.println(” Anda pilih bilangan satu”); break;
case 2 :
System.out.println(” Anda pilih bilangan dua”); break;
case 3 :
System.out.println(” Anda pilih bilangan tiga”); break;
default:
System.out.println(” Anda pilih bilangan default”);
}
}
}
Hasil output

Anda pilih bilangan dua
Process completed.

Created By Edi Casnadi - IM

34
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Belajar melalui latihan switch case dalam bahasa Java, yaitu:
Latihan-1 ,Untuk membuat Menu.:
import javax.swing.*;
public class MenuOperasi {
static int pil;
public static void pilihan(){
System.out.println("1. Penjumlahan");
System.out.println("2. Pengurangan");
System.out.println("3. Perkalian");
System.out.println();
String msn = JOptionPane.showInputDialog(“Pilihan Anda ? “);
pil=Integer.parseInt(msn);
}
public static void keluaran(){
int a, b, c;
pilihan(); //memanggil method pilihan();
switch (pil) {
case 1 :
System.out.println("Pilihan Anda Penjumlahan");
a=3; b=5;
c=a+b;
System.out.println("hasil penjumlahan = " + c); break;
case 2 :
System.out.println("Pilihan Anda Pengurangan");
a=3; b=5;
c=a - b;
System.out.println("hasil pengurangan = " + c); break;
case 3 :
System.out.println("Pilihan Anda Perkalian");
a=3; b=5;
c=a * b;
System.out.println("hasil perkalian = " + c); break;
default:
System.out.println("Maaf bukan pilihan");
}
}
public static void main(String[] args) {
kelauaran();
//memanggil method keluaran()
}
}

Created By Edi Casnadi - IM

35
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Hasil output
1. Penjumlahan
2. Pengurangan
3. Perkalian
Pilihan Anda ? 3
hasil perkalian = 15
Latihan-2, Untuk menghitung tarif wartel, yaitu
import javax.swing.*;
import java.awt.*;
public class wartel {
static private String J1,J2,M1,M2,D1,D2;
static private int hargapk,
Jam1,Jam2,Menit1,Menit2,Detik1,Detik2,JWaktu;
static float KMenit,KonDetik,KonJam,KonMenit,harganpk;
// method perhitungan
static void NonPaket(){
int JJam,JDetik,JMenit;
System.out.println("Anda Pilih Non Paket");
System.out.println("--------------------------");
J1=JOptionPane.showInputDialog("Masuk Jam");
M1=JOptionPane.showInputDialog("Masuk Menit");
D1=JOptionPane.showInputDialog("Masuk Detik");
J2=JOptionPane.showInputDialog("Keluar Jam");
M2=JOptionPane.showInputDialog("Keluar Menit");
D2=JOptionPane.showInputDialog("Keluar Detik");
Jam1=Integer.parseInt(J1);//konversi string ke integer
Jam2=Integer.parseInt(J2);
Menit1=Integer.parseInt(M1);
Menit2=Integer.parseInt(M2);
Detik1=Integer.parseInt(D1);
Detik2=Integer.parseInt(D2);
//pengurangan
JJam=Jam1-Jam2;
JMenit=Menit1-Menit2;
JDetik=Detik1-Detik2;
//perhitungan
JWaktu=(JJam*3600)+(JMenit*60)+JDetik;
//merubah ke jam, menit dan detik
KonJam=JWaktu/3600;
Created By Edi Casnadi - IM

36
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

KonMenit=JWaktu%3600;
KMenit=KonMenit/60;
KonDetik=KonMenit%60;
//pembayaran
System.out.println("Lama Berinternet :" +
Math.abs(KonJam) +" Jam : "+
Math.abs(KMenit) +" Menit :
"+Math.abs(KonDetik)+"Detik");
harganpk=Math.abs((KMenit*50)) +
Math.abs((KonJam*60*50));
System.out.println("Harga Durasi :" +harganpk);
String Pesan=JOptionPane.showInputDialog("Pembayaran Rp ? ");
int Byr=Integer.parseInt(Pesan);
System.out.println("Bayar Rp :" +Byr);
float bayar=Byr-harganpk;
System.out.println("Kembali Rp :" +bayar);
}
//mehod paket
static void Paket(){
System.out.println("ANDA PILIH PAKET");
System.out.println("-----------------");
System.out.println("1. 3 JAM");
System.out.println("2. 4 JAM");
String Pesan=JOptionPane.showInputDialog("Pilihan PAKET Anda ? ");
System.out.println("--------------------------");
int pil=Integer.parseInt(Pesan);
switch (pil){
case 1:
hargapk=50*180;
System.out.println("Harga Paket : "+ hargapk);
break;
case 2:
hargapk=50*240;
System.out.println("Harga Paket : "+ hargapk);
break;
default:System.out.println("Bukan Pilihan PAKET");
}
}
static void pilihan(){
int pilih;
System.out.println(" WARTEL eSOFT");
Created By Edi Casnadi - IM

37
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

System.out.println("-----------------");
System.out.println("1. NON PAKET");
System.out.println("2. PAKET");
String Pesan=JOptionPane.showInputDialog("Pilihan Anda ? ");
System.out.println("--------------------------");
pilih=Integer.parseInt(Pesan);
switch (pilih){
case 1:NonPaket();break;
case 2:Paket();break;
default:System.out.println("Bukan Pilihan");
}
}

public static void main(String[] args) {
pilihan();
System.out.println("----------------------------");
System.out.println("Terimakasih");
}
}

Tampilan ketika di run

Created By Edi Casnadi - IM

38
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

Kasus tambahan,
Marilah kita belajar switch case dengan menggunakan method, untuk menyelesaikan
persoalan pemilihan operasi penjumlahan, pengurangan dan perkalian, yaitu:
Dalam algoritma, yaitu:
ALGORITMA Pemilihan_Operasi {
{menentukan Anda harus mengisikan pilihan yaitu penjumlahan, pengurangan,
perkalian }
DEKLARASI
pil, a, b, hasil  integer
DESKRIPSI
read( pil  pilihan 1,2,3 )
read( a,b )

//memasukan pil dari keyboard

switch( pil)
case 1 : println"Anda Memilih Penjumlahan"
hasil  a + b
case 2 : println"Anda Memilih Pengurangan”
hasil  a - b
case 3 : println"Anda Memilih Perkalian"
hasil  a * b
default : println"Bukan Pilihan";
end_switch
println(hasil);
End_algo

Cobalah kita terjemahkan algoritma di atas, menggunakan method dalam bahasa Java,
yaitu:
import javax.swing.*;
public class OperasiSwitch {
public static int pil, hasil;
public static int d, e;
static void Pilihan (){
System.out.println("Pilihan Anda ?");
System.out.println("-----------------------");
System.out.println("1. Penjumlahan");
System.out.println("2. Pengurangan");
System.out.println("3. Perkalian");
System.out.println();

Created By Edi Casnadi - IM

39
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

String angka1;
angka1 = JOptionPane.showInputDialog("Pilihan Anda ?");
pil = Integer.parseInt(angka1); //konversi string ke integer
keluar();
//pemanggilan method keluar
}
int Penjumlahan(int a,int b){
return a + b;
}
int Pengurangan(int a,int b){
return a - b;
}
int Perkalian(int a,int b){
return a * b;
}
static void masuk(){
String angka1, angka2;
angka1 = JOptionPane.showInputDialog("Masukan angka1 ?");
d = Integer.parseInt(angka1); //konversi string ke integer
angka2 = JOptionPane.showInputDialog("Masukan angka2 ?");
e = Integer.parseInt(angka2); //konversi string ke integer
}
static void keluar() {
OperasiSwitch sw = new OperasiSwitch;
//definisi kelas
switch (pil){
case 1:
System.out.println("Anda Pilih Penjumlahan");
masuk();
//pemanggilan method Pilihan
System.out.println(" JML = "+sw.Penjumlahan(d,e));break;
case 2:
System.out.println("Anda Pilih Pengurangan");
masuk();
//pemanggilan method masuk
System.out.println("Kurang = "+sw.Pengurangan(d,e));break;
case 3:
System.out.println("Anda Pilih Perkalian");
masuk();
//pemanggilan method masuk
System.out.println("Kali = "+sw.Perkalian(d,e));break;
default :
System.out.println("Bukan pilihan");
}
}
Created By Edi Casnadi - IM

40
www.csa-interganesha.com

Tutorial Struktur Pemilihan Algoritma

public static void main(String[] args) {
Pilihan();
//pemanggilan method Pilihan
}
}

Hasil output, yaitu:
Pilihan Anda ?
----------------------1. Penjumlahan
2. Pengurangan
3. Perkalian
Anda Pilih Pengurangan
Pengurangan = 3

Keterangan:
Program di atas, membuat pogram pemilihan yaitu penjumlahan, pengurangan dan
perkalian, dengan dipecah menjadi beberapa method, seperti:
 Method penjumlahan(), //berupa method integer
Untuk menghitung penjumlahan, yaitu a + b.
 Method pengurangan(), //berupa method integer
Untuk menghitung pengurangan, yaitu a - b.
 Method perkalian(), //berupa method integer
Untuk menghitung perkalian, yaitu a * b.
 Method masuk(), //berupa method static
Untuk memasukan variabel d dan e, yang akan dikirim dalam method lain.
 Method keluar(), //berupa method static
Untuk menampilkan sesuai dengan pilihan yang dipilih.
 Method Pilihan(), //berupa method static
Untuk menampilkan keterangan, pengoperasian, seperti tampilan berikut:
Pilihan Anda ?
----------------------1. Penjumlahan
2. Pengurangan
3. Perkalian

Created By Edi Casnadi - IM

41

Contenu connexe

Tendances

Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03KuliahKita
 
Barisan dan Deret ( Kalkulus 2 )
Barisan dan Deret ( Kalkulus 2 )Barisan dan Deret ( Kalkulus 2 )
Barisan dan Deret ( Kalkulus 2 )Kelinci Coklat
 
Statistika: Peluang
Statistika: PeluangStatistika: Peluang
Statistika: PeluangJidun Cool
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritriyana fairuz kholisa
 
Program penjumlahan dan pengurangan matriks
Program penjumlahan dan pengurangan matriksProgram penjumlahan dan pengurangan matriks
Program penjumlahan dan pengurangan matriksSimon Patabang
 
Proposisi Logika Matematika
Proposisi Logika MatematikaProposisi Logika Matematika
Proposisi Logika MatematikaTaufik_Yui
 
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Fatma Qolbi
 
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorialSiti Khotijah
 
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan AlgoritmaAlgoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan AlgoritmaAri Septiawan
 
Aturan Inferensi dan Metode Pembuktian
Aturan Inferensi dan Metode PembuktianAturan Inferensi dan Metode Pembuktian
Aturan Inferensi dan Metode PembuktianFahrul Usman
 
proposisi majemuk & Tautologi
 proposisi majemuk & Tautologi proposisi majemuk & Tautologi
proposisi majemuk & TautologiHuzairi Zairi
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAdam Mukharil Bachtiar
 
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop OnlineERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop OnlineLucha Kamala Putri
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi PengetahuanSherly Uda
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanCliquerz Javaneze
 
Statistika - Distribusi peluang
Statistika - Distribusi peluangStatistika - Distribusi peluang
Statistika - Distribusi peluangYusuf Ahmad
 
Metode pencarian heuristik
Metode pencarian heuristikMetode pencarian heuristik
Metode pencarian heuristikBaguss Chandrass
 
Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15doudomblogspot
 

Tendances (20)

Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03
 
Barisan dan Deret ( Kalkulus 2 )
Barisan dan Deret ( Kalkulus 2 )Barisan dan Deret ( Kalkulus 2 )
Barisan dan Deret ( Kalkulus 2 )
 
Statistika: Peluang
Statistika: PeluangStatistika: Peluang
Statistika: Peluang
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskrit
 
Program penjumlahan dan pengurangan matriks
Program penjumlahan dan pengurangan matriksProgram penjumlahan dan pengurangan matriks
Program penjumlahan dan pengurangan matriks
 
Proposisi Logika Matematika
Proposisi Logika MatematikaProposisi Logika Matematika
Proposisi Logika Matematika
 
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
 
circular linked list
circular linked listcircular linked list
circular linked list
 
Insertion sort
Insertion sortInsertion sort
Insertion sort
 
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
 
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan AlgoritmaAlgoritma Pemrograman (Flowchart) - Logika dan Algoritma
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
 
Aturan Inferensi dan Metode Pembuktian
Aturan Inferensi dan Metode PembuktianAturan Inferensi dan Metode Pembuktian
Aturan Inferensi dan Metode Pembuktian
 
proposisi majemuk & Tautologi
 proposisi majemuk & Tautologi proposisi majemuk & Tautologi
proposisi majemuk & Tautologi
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
 
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop OnlineERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
 
Representasi Pengetahuan
Representasi PengetahuanRepresentasi Pengetahuan
Representasi Pengetahuan
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi boolean
 
Statistika - Distribusi peluang
Statistika - Distribusi peluangStatistika - Distribusi peluang
Statistika - Distribusi peluang
 
Metode pencarian heuristik
Metode pencarian heuristikMetode pencarian heuristik
Metode pencarian heuristik
 
Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15Array searching sorting_pert_11,12,13,14,15
Array searching sorting_pert_11,12,13,14,15
 

Similaire à IFSTRUKTUR

Pertemuan 5b.pptx
Pertemuan 5b.pptxPertemuan 5b.pptx
Pertemuan 5b.pptxMenny SN
 
2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrogramanRoziq Bahtiar
 
Percabangan - Logika dan Algoritma
Percabangan - Logika dan AlgoritmaPercabangan - Logika dan Algoritma
Percabangan - Logika dan AlgoritmaAri Septiawan
 
ALOGARITMA 3
ALOGARITMA 3ALOGARITMA 3
ALOGARITMA 3arstwn
 
Modul v dan vi algo
Modul v dan vi algoModul v dan vi algo
Modul v dan vi algoSTMIK AKAKOM
 
Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5Dede Kurniadi
 
5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutan5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutanAnna Fitria
 
C programming language notes (6)
C programming language notes (6)C programming language notes (6)
C programming language notes (6)nakomuri
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdfJurnal IT
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdfJurnal IT
 
Modul6 1225443461187631-8
Modul6 1225443461187631-8Modul6 1225443461187631-8
Modul6 1225443461187631-8aan_junior147
 
Jeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolJeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolKristanto Wijaya
 
Pertemuan 5C.pptx
Pertemuan 5C.pptxPertemuan 5C.pptx
Pertemuan 5C.pptxMenny SN
 
Bab 7 ms excel ii
Bab 7   ms excel iiBab 7   ms excel ii
Bab 7 ms excel iilukmanbooms
 
Percabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeansPercabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeansputra alexi
 

Similaire à IFSTRUKTUR (20)

Slide Percabangan
Slide Percabangan Slide Percabangan
Slide Percabangan
 
Pertemuan 5b.pptx
Pertemuan 5b.pptxPertemuan 5b.pptx
Pertemuan 5b.pptx
 
2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman
 
Percabangan - Logika dan Algoritma
Percabangan - Logika dan AlgoritmaPercabangan - Logika dan Algoritma
Percabangan - Logika dan Algoritma
 
ALOGARITMA 3
ALOGARITMA 3ALOGARITMA 3
ALOGARITMA 3
 
Modul v dan vi algo
Modul v dan vi algoModul v dan vi algo
Modul v dan vi algo
 
Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5
 
5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutan5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutan
 
C programming language notes (6)
C programming language notes (6)C programming language notes (6)
C programming language notes (6)
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf
 
modul6
modul6modul6
modul6
 
Spm minggu03 spt3102
Spm minggu03 spt3102Spm minggu03 spt3102
Spm minggu03 spt3102
 
Modul6 1225443461187631-8
Modul6 1225443461187631-8Modul6 1225443461187631-8
Modul6 1225443461187631-8
 
Jeni Intro1 Bab06 Struktur Kontrol
Jeni Intro1 Bab06 Struktur KontrolJeni Intro1 Bab06 Struktur Kontrol
Jeni Intro1 Bab06 Struktur Kontrol
 
Jeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolJeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrol
 
Pertemuan 5C.pptx
Pertemuan 5C.pptxPertemuan 5C.pptx
Pertemuan 5C.pptx
 
04 if-ifelse-switch-break
04 if-ifelse-switch-break04 if-ifelse-switch-break
04 if-ifelse-switch-break
 
Bab 7 ms excel ii
Bab 7   ms excel iiBab 7   ms excel ii
Bab 7 ms excel ii
 
Percabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeansPercabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeans
 

Plus de casnadi

Pengulanganwhilealgoritma
PengulanganwhilealgoritmaPengulanganwhilealgoritma
Pengulanganwhilealgoritmacasnadi
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritmacasnadi
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritmacasnadi
 
Penulisanalgoritma
PenulisanalgoritmaPenulisanalgoritma
Penulisanalgoritmacasnadi
 
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma casnadi
 
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma casnadi
 
Program Hitung di java dan netbeans
Program Hitung di java dan netbeansProgram Hitung di java dan netbeans
Program Hitung di java dan netbeanscasnadi
 
Tampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeansTampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeanscasnadi
 

Plus de casnadi (8)

Pengulanganwhilealgoritma
PengulanganwhilealgoritmaPengulanganwhilealgoritma
Pengulanganwhilealgoritma
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritma
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritma
 
Penulisanalgoritma
PenulisanalgoritmaPenulisanalgoritma
Penulisanalgoritma
 
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma
 
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma
 
Program Hitung di java dan netbeans
Program Hitung di java dan netbeansProgram Hitung di java dan netbeans
Program Hitung di java dan netbeans
 
Tampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeansTampil data di tabel dg Java & netbeans
Tampil data di tabel dg Java & netbeans
 

Dernier

PRESENTASI EEC social mobile, and local marketing.pptx
PRESENTASI EEC social mobile, and local marketing.pptxPRESENTASI EEC social mobile, and local marketing.pptx
PRESENTASI EEC social mobile, and local marketing.pptxPCMBANDUNGANKabSemar
 
Panduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfPanduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfandriasyulianto57
 
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.aechacha366
 
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfPPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfNatasyaA11
 
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptNabilahKhairunnisa6
 
Kelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdfKelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdftsaniasalftn18
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiIntanHanifah4
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxBambang440423
 
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaDinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaEzraCalva
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxg66527130
 
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...Kanaidi ken
 
Materi power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .pptMateri power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .pptAcemediadotkoM1
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdfcicovendra
 
alat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptxalat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptxRioNahak1
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdfvebronialite32
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaSABDA
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxFuzaAnggriana
 
TPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikanTPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikanNiKomangRaiVerawati
 
UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...
UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...
UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...jumadsmanesi
 
POWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMP
POWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMPPOWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMP
POWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMPAnaNoorAfdilla
 

Dernier (20)

PRESENTASI EEC social mobile, and local marketing.pptx
PRESENTASI EEC social mobile, and local marketing.pptxPRESENTASI EEC social mobile, and local marketing.pptx
PRESENTASI EEC social mobile, and local marketing.pptx
 
Panduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfPanduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdf
 
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
 
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdfPPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
PPT IPS Geografi SMA Kelas X_Bab 5_Atmosfer.pptx_20240214_193530_0000.pdf
 
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
 
Kelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdfKelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdf
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajii
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
 
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaDinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
 
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
 
Materi power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .pptMateri power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .ppt
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
 
alat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptxalat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptx
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdf
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
 
TPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikanTPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikan
 
UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...
UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...
UNGGAH PEGANGAN LOKAKARYA DAN PENDAMPINGAN INDIVIDU DALAM KEGIATAN PEMBEKALAN...
 
POWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMP
POWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMPPOWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMP
POWERPOINT BAHAN AJAR SENYAWA KELAS VIII SMP
 

IFSTRUKTUR

  • 1. www.csa-interganesha.com Judul Penulis Level Hak Kategori Tutorial Struktur Pemilihan Algoritma : Struktur Pemilihan (If then) : Edi Casnadi : Basic : csa-interganesha / www.csa-interganesha.com : Public STRUKTUR PEMILIHAN (IF .... THEN) Gambar 1 Pilihan jurusan kuliah Seringkali suatu instruksi hanya bisa dikerjakan, jika ia dapat memenuhi suatu persyaratan tertentu. Oleh karena itu, komputer tidak lagi mengerjakan instruksi secara runtunan saja, tetapi berdasarkan syarat logika yang dipenuhi yaitu true atau jika tidak dipenuhi maka logika tersebut adalah false. 1. Pendahuluan Dalam menentukan pemilihan harus mempunyai syarat-syarat kondisi tertentu di dalam pemilihan dengan cara membandingkan dua pernyataan tersebut. Hal yang terpenting bagi kita, harus pandai menganalisa masalah yang ada, artinya menentukan kondisi boolean (bernilai true atau false) dan menentukan suatu aksi/statement yang dilakukan jika kondisi tersebut berlaku (memenuhi syarat). Dalam algoritma terdapat dua pemilihan yaitu 1. if (…) then 2. switch (…) case Created By Edi Casnadi - IM 1
  • 2. www.csa-interganesha.com 2. Tutorial Struktur Pemilihan Algoritma Struktur if (…) then Bentuk umum algoritma pemilihan yaitu: if (kondisi) then statement end_if Contoh kondisional lengkap dengan pseudocode: if (nilai=80) then println(“Anda Lulus Ujian”) //statement end_if Bentuk umum pemilihan dengan flowchart benar kondisi salah Statement_1 stop Gambar 2 Flowchart pemilihan Pemilihan/kondisional yaitu untuk melakukan proses pengujian, dalam pengambilan suatu keputusan, baik false maupun true guna mengeksekusi suatu blok instruksi/statement, yang terdiri dari satu blok instruksi atau beberapa instruksi secara sekaligus. Misal untuk menentukan indeks prestasi dalam matakuliah algoritma, apakah seorang mahasiswa akan mendapatkan indeks dengan mutu: A, B, C, D atau E tergantung atau ketentuan dari kondisi nilainya. Ketentuan nilai sebagai berikut: jika nilai > 90 maka indeks=“A” jika nilai > 85 maka indeks=“B” Created By Edi Casnadi - IM 2
  • 3. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma jika nilai > 75 maka indeks=“C” jika nilai > 55 maka indeks=“D” jika nilai < 54 maka indeks=“E” Keterangan: coba kita lihat persoalan di atas terdapat suatu syarat bahwa jika nilai>90 maka akan mendapatkan indeks=“A”, tetapi jika nilai>85 maka mendapatkan indeks=“B”, tetapi jika nilai>75 maka mendapatkan indeks=“C”, tetapi jika nilai>65 maka mendapatkan indeks=“D", tetapi jika nilai <54 maka mendapatkan indeks=“E”. Jelaslah bahwa masalah, dalam menentukan suatu indeks di atas yang tergantung dari ketentuan nilainya. Setelah kita melakukan analisis dengan suatu nilai dengan kategori tertentu dan memenuhi syarat(kondisi true) tertentu. Dengan adanya suatu syarat tersebut maka hal yang terpenting dari pemilihan ini yaitu suatu kondisi terpenuhi atau benar alias true maka kondisi tersebut akan dikerjakan, tetapi jika kondisi tersebut tidak terpenuhi salah atau false maka kondisi tersebut tidak bisa dilaksanakan. 3. Pemilihan dalam bahasa Java Terdapat beberapa pemilihan atau disebut juga percabangan, untuk jenis pemilihan dalam bahasa Java sebetulnya ada beberapa hal, yaitu: 1. Pernyataan if .. then yang terdiri dari - if ( kondisi ) { statement} - if ( kondisi ) { statement_1} else {statement_2} 2. Pernyataan switch.. case Pernyataan ini, kita akan bahas lebih lanjut pada pembahasan switch..case Bentuk umum pelilihan dalam bahasa Java if ( kondisi) { Statement } Contoh: ditulis hanya sebagian program Java if (nilai==80) { System.out.println(“Anda Lulus Ujian”); // statement } Catatan: Untuk penulisan if, harus menggunakan guruf kecil. Created By Edi Casnadi - IM 3
  • 4. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Perbandingan bentuk umum algoritma pemilihan atau kondisional dengan penulisan dalam bahasa Java, dapat dilihat pada tabel, berikut ini: Tabel 1 Perbandingan kondisi/pemilihan PEMILIHAN / KODISIONAL PEMILIHAN / KODISIONAL Algoritma Bahasa Java Satu kondisi Satu kondisi if (kondisi) then Statement_1 End_if if ( kondisi) { Statement_1 } Dua kondisi Dua kondisi If (kondisi1) then Statement_1 else if (kondisi2) then Statement_2 End_if if ( kondisi1) { Statement_1 } else if (kondisi2) { Statement_2 } End_if Tiga kondisi If (kondisi1) then Statement_1 else if (kondisi2) then Statement_2 else if (kondisi3) then Statement_3 end if Tiga kondisi if ( kondisi 1) { Statement_1 } else if (kondisi2) { Statement_2 } else if (kondisi3) { Statement_3 } end if dan seterusnya…………… 4. Pemilihan dengan bantuan else (selain itu) Dalam pemilihan tidak akan terlepas dari suatu kondisi yang true saja, tetapi pilihan juga ada yang tidak memenuhi kondisi apa pun, kemudian apa yang harus dilakukan?. Ya harus Anda lakukan yaitu mencari supaya hal tersebut tidak terjadi kebuntuan. Untuk menanggulangi kesulitan tersebut, maka dalam algoritma pemilihan ada suatu pernyataan, yaitu else. Created By Edi Casnadi - IM 4
  • 5. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Struktur penulisan else, yaitu if … then… else, diartikan sebagai berikut : jika…maka..selain itu. dalam bahasa Indonesia bisa Bentuk umum algoritma pemilihan if then else, yaitu: if ( kondisi ) then Statement_1 else Statement_2 End_if Contoh: if ( nilai=80 ) then println(“Anda Lulus Ujian”) else println(“Anda Gagal Ujian”) End_if Keterangan: Pada “Anda Lulus Ujian” akan dilaksanakan jika kondisi=true (nilai=80), tetapi jika kondisi=false, maka secara otomatis akan menampilkan “Anda Gagal Ujian“. Perhatikan bahwa “else” menyatakan ingkar(not) dari kondisi dalam pemilihan. Bentuk umum pemilihan (if then else) dalam bahasa Java yaitu: Contoh: if (nilai==80) { println(“Anda Lulus Ujian”); } else { println(“Anda Gagal Ujian”); } Bentuk umum pemilihan dengan bantuan else dalam algoritma flowchart, yaitu: benar salah kondisi Statement_2 Statement_1 Stop Gambar 4 Bagan alir pemilihan/kondisi dengan dua kondisi Created By Edi Casnadi - IM 5
  • 6. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Contoh-contoh algoritma pemilihan if then else, yaitu: ALGORITMA BilGanjil_Genap {menampilkan bilangan genap dan ganjil dari inputan variabel bil, dan dengan bil mod 2=1 maka bilangan ganjil, untuk bil mod 2=0 maka bilangan genap} DEKLARASI bil  integer DESKRIPSI read(bil  2) //input data if ( bil mod 2 = 0 ) then println(“bilangan genap”) else println(“bilangan ganjil”) end_if End_algo Belajar melalui contoh dalam pemilihan if then else, yaitu: Diketahui suatu bilangan deret, seperti berikut: 1, 2 , 3 , 4 ,5 ,6 ,7 ,8 ,9 ,10. Tugas Anda sekarang adalah menampilkan mana yang termasuk bilangan bulat dan mana yang termasuk bilangan ganjil, sesuai dengan data bilangan deret di atas!. Jawaban dengan analisis, yaitu: Misalkan: data di atas tersebut, kita inisialkan dengan kata “bil”. Berarti “bil” berisi data di atas, kemudian bil dibagi dengan 2 sama dengan 0 maka menghasilkan bilangan bulat, jika hasil tersebut menghasilkan sisa bagi sama dengan 1, maka bilangan tersebut termasuk bilangan ganjil. Tulis data bilangan deret, yaitu: bil = 1, 2 , 3 , 4 ,5 ,6 ,7 ,8 ,9 ,10. jika bil mod 2 = 0 bil mod 2 = 1 Created By Edi Casnadi - IM // jika bil dibagi 2 = 0 maka bil adalah bilangan genap karena sisa baginya 0, misal 2 mod 2=0 //bil dibagi 2=1 bilangan ganjil karena menghasilkan sisa = , misal 3 mod 2 = 1 6
  • 7. www.csa-interganesha.com Jadi hasil perhitungan tersebut yaitu: Bilangan Genap 2 4 6 8 10 Tutorial Struktur Pemilihan Algoritma Bilangan Ganjil 1 3 5 7 9 Dalam pemilihan atau kondisional ini, dibagi menjadi beberapa kasus pemilihan, hal ini untuk bertujuan mempermudah dalam mempelajari algoritma pemilihan tersebut, algoritma pemilihan dibagi menjadi beberapa kasus pemilihan, yaitu satu kondisi, dua kondisi dan tiga kondisi atau lebih dari tiga kondisi. Contoh pemakaian pernyataan ”else” dalam bahasa Java public class Kelulusan_mhs { static int nilai ; //variabel global static String nama, keterangan; public static void hitung(){ nama = "edi"; nilai=80; if (nilai>=60) keterangan ="lulus"; else keterangan = "tidak lulus"; } public static void hasil(){ System.out.println("Nama : " +nama); System.out.println("Keterangan : "+ keterangan); } //akhir method hasil() public static void main(String[] args) { hitung(); //memanggil method hitung() hasil(); //memanggil method hasil() } } Created By Edi Casnadi - IM 7
  • 8. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Hasil output Nama : edi Keterangan : lulus 5. Pemilihan satu kondisi Pemilihan satu kondisi, sebetulnya sudah kita pelajari, tetapi untuk lebih paham lagi, alangkah baiknya kita membelajari lagi. Pemilihan satu kondisi yaitu, terdapat suatu kondisi yang hanya satu pada pemilihan. Berikut bentuk umum algoritma pemilihan satu kondisi, yaitu if (kondisi) then Statement_1 End_if Keterangan:  if, diartikan awal dari percabangan atau awal dari kondisi, yang diartikan dalam bahasa Indonesia yaitu jika  ( kondisi ), merupakan tempat dari kondisi suatu logika (true atau false) yang berarti memenuhi logika atau tidak, tetapi kondisi ini akan dijalankan jika kondisinya true atau benar  then, diartikan dalam bahasa Indonesia yaitu maka, artinya setelah kondisi bernilai true atau benar, kemudian then akan kerjakan dan akan menuju statement.  Statement, merupakan tempat hasil kondisi jika benar, maka statement ini yang akan dikerjakan, sebetulnya boleh lebih dari satu statement.  End_if, merupakan akhir atau batasan dari pernyataan if Kalau kita gabungkan pernyataan dari if ( kondisi ) then yang berarti (jika – maka). Berikut algoritma pemilihan menggunakan flowchart. Benar kondisi salah Statement stop Gambar 5 Flowchart peilihan/kondisi dengan satu kondisi Created By Edi Casnadi - IM 8
  • 9. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Belajar melalui contoh-contoh algoritma pemilihan satu kondisi  if ( x > 50 ) then println(“ lima puluh”) end_if  if ( nilai < 100 ) then println(“ kurang dari 100 “ ) end_if  if ( x =50 ) then x = x + 50 end_if  if ( x>80 and y>90 ) then z=x+y end_if  if ( ada= true) then read(a) println(a) end_if  if ( not ada= false) then read(a) println(a) end_if Pemilihan satu kondisi dalam bahasa Java Di dalam percabangan if .. then di dalam bahasa Java, menyatakan akan dieksekusi bila memenuhi syarat tertentu, yaitu: Bentuk umum pemilihan satu kondisi dalam bahasa Java, sebegai berikut: if (kondisi==true) { System.out.println(“Statement_1”); } Belajar melalui contoh-contoh pemilihan satu kondisi Contoh-1, membandingkan angka yang berbeda ALGORITMA PembandingAngka { membandingkan nilai antara a dan b jika b kurang dari a maka akan di cetak dengan tipe data bilangan bulat} Created By Edi Casnadi - IM 9
  • 10. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma DEKLARASI a, b  integer DESKRIPSI a  20 b  16 if ( b < a) then println(” b kurang dari a”) End_if End_algo Keterangan: Algoritma di atas, yaitu membandingkan variabel a dan b, kemudian variabel a diisi dengan 20, variabel b diisi dengan 16, setelah itu terdapat suatu kondisi, yang bertujuan untuk menentukan apakah kondisi tersebut benar atau salah. Dengan kondisi jika b kurang dari a atau ( b <a ) maka kondisi tersebut bernilai benar dan akan mencetak kata ”b kurang dari a”, tetapi sebaliknya jika yang dimasukan b lebih besar dari a, maka tidak mencetak apa-apa. Contoh-2, membandingkan suatu karakter ALGORITMA KesamaanChar { membandingkan nilai ans, jika ans sama denngan Y maka dicetak dengan tipe data char} DEKLARASI ans  char DESKRIPSI ans  ’y’; If (ans=”y”) then println(”benar”) end_if End_algo //jika ans sama dengan y maka tampil Iya Keterangan: Algoritma di atas, untuk membandingkan sebuah karakter yang disimpan di variabel ans, jika ans diisi dengan ”y” kecil, maka kata ”benar” tetapi jika ans diisi dengan selain y kecil, maka dianggap salah sehingga tidak adanya tampilan keluaran. Coba algoritma di atas, kita terjemahkan dalam algoritma flowchart, seperti gambar dibawah ini. Created By Edi Casnadi - IM 10
  • 11. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Menentukan bilangan nol dalam algoritma flowchart { Algoritma kondisi yaitu :menentukan Start suatu kondisi tertentu, jika kondisi tersebut memenuhinya maka statement akan dijalankan } Integer bil bil = 0 ya bil = 0 tidak variabel ini bernilai NOL Stop Gambar 6 Flowchart Menentukan variabel nol Latihan-latihan pemilihan dalam bahasa Java Latihan-1 Menentukan bilangan nol dalam bahasa Java,yaitu: public class BilNol { public static void main(String[] args) { int bil = 0; if (bil==0) System.out.println("variabel ini bernilai NOL"); } } Hasil output variabel ini bernilai NOL Latihan-2 Penyelesaian bilangan genap dalam bahasa Java, yaitu: public class Bil_Genap { public static void main(String[] args) { int bil = 4; Created By Edi Casnadi - IM 11
  • 12. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma if (bil % 2 == 0) { System.out.println(" bilangan genap"); System.out.print(bil); } } } Hasil Output 4 ini bilangan genap Keterangan: Maka akan menampilkan data pada alat keluaran, seperti hasil di atas. Ingat lambang % merupakan mod yang artinya sisa bagi, misalnya 4 mod 2 = 0, maka pernyataan di atas akan mencetak bilangan genap saja. 6. Pemilihan dua kondisi Pemilihan dua kondisi yaitu pemilihan yang terdapat dua kondisi untuk penyeleksianya. Pemilihan dua kondisi digunakan untuk mengatasi jika kondisi pertama tidak memenuhi. Bentuk umum pemilihan dua kondisi, dalam algoritma pseudo code, yaitu: If ( kondisi1) then //kondisi pertama Statemen_1 else if (kondisi2 ) then //kondisi kedua Statement_2 end_if end_if Contoh: If ( bilangan>0) then //kondisi pertama println(“Bilangan Positif”) else if (bilangan<0 ) then //kondisi kedua println(“Bilangan Negatif”) end_if end_if Created By Edi Casnadi - IM 12
  • 13. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Bentuk umum pemilihan dua kondisi, dalam bahasa Java, yaitu: if ( kondisi1) { //kondisi pertama Statemen_1 } else if (kondisi2 ) { //kondisi kedua Statement_2 } Contoh: if ( bilangan>0) { //kondisi pertama System.out.println(“Bilangan Positif”); } else if (bilangan<0 ) { //kondisi kedua System.out.println(“Bilangan Negatif”); } Bentuk umum pemilihan dua kondisi dalam algoritma flowchart, yaitu: Kondisi1 salah benar Kondisi2 benar salah Statement1 Statement1 End Gambar 7 Flowchart pemilihan dua kondisi Created By Edi Casnadi - IM 13
  • 14. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Contoh algoritma pemilihan Contoh-1 Misalkan: diketahui kedua bilangan bulat tersimpan dalam variabel A dan B kemudian membandingkan antara A dan B. Coba kita analisis contoh di atas, yaitu: Diketahui variabel A dan B di baca dua buah bilangan bulat dari piranti masukan. Jika A > B, maka bilangan terbesar adalah A Jika B > A, maka bilangan terbesar adalah B Berikut algoritma maksimum dalam bilangan bulat. ALGORITMA Maksimum { Menentukan bilangan terbesar dari dua buah bilangan bulat } DEKLARASI A, B  integer DESKRIPSI read(A, B,) if ( A > B ) then println(“Bilangan terbesar A”) else if (A<B) then println(“Bilangan terbesar B”); End_if End_if End_algo Belajar melalui latihan pemilihan dua kondisi dalam algoritm dan bahasa Java, yaitu: Latihan-1, Menentukan bilangan nol dan bukan bilangan nol, penyelesaian dalam algoritma, yaitu: ALGORITMA BilanganlNol { menentukan suatu kondisi tertentu, jika kondisi tersebut memenuhinya maka statement akan dijalankan } Created By Edi Casnadi - IM 14
  • 15. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma DEKLARASI bil  integer DESKRIPSI bil  0 if (bil == 0 ) then println(“Variabel ini bernilai NOL”) else if ( bil > 0) then println(“Variabel ini bernilai lebih besar NOL”) end_if end_if End_algo Pemilihan dengan bilangan nol dalam bahasa Java, yaitu: public class BilanganlNol { public static void main(String[] args) { int bil = 0; if ( bil==0 ) System.out.println("variabel ini bernilai NOL"); else if ( bil>0 ) System.out.println("variabel ini bukan bernilai NOL"); } } Latihan-2 dalam bentuk method Menentukan bilangan genap-ganjil dalam bahasa Java, yaitu: sesuai dengan algoritma yang sudah ditulis diatas maka dibwah ini contoh dalam bahasa Java dalam bentuk method. import java.swing.*; public class BilanganGanjilBulat { static void Bilangan ( int a ){ // method bilangan if (a % 2 == 0) { System.out.println("Bilangan Genap = " + a ); Created By Edi Casnadi - IM 15
  • 16. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma } else if ( a % 2 == 1){ System.out.println("Bilangan Ganjil = " + a ); } } //akhir ari method Bilangan public static void main(String[] args) { int b; String angka1; angka1 = JOptionPane.showInputDialog("Masukan angka1 "); b = Integer.parseInt(angka1); //konversi string ke integer perkalian(b); // memanggil method } } 7. Pemilihan tiga kondisi atau lebih Dalam kehiupan, kita selalu dihadapkan dalam beberapa pilihan, di dalam program juga sama untuk memilih dari tiga pilihan, struktur If – then – else if – then .. else, untuk menangani lebih dari satu kondisi sebagaimana halnya pada masalah dengan dua kondisi. Bentuk umum algoritma pemilihan dalam tiga kondisi if (kondisi1) then Statement_1 else if ( kondisi2 ) then Statement_2 else if ( kondisi3) then Statement_3 end_if end_if end_if Bentuk umum algoritma dalam tiga kondisi atau lebih if (kondisi_1) then Statement_1 else if ( kondisi_2 ) then Statement_2 else if ( kondisi 3) then Statement_3 else if (kondisi 4 ) then Statement_4 Created By Edi Casnadi - IM 16
  • 17. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma else Statement_5 end_if end_if end_if end_if Bentuk umum pemilihan flowchart (if …then else if then else), yaitu: benar kondisi1 benar salah kondisi2 salah Statement1 salah Kondisi3 Statement2 benar Statement3 stop Gambar 8 Flowchart peilihan/kondisi dengan tiga kondisi Bentuk umum algoritma dalam emapat kondisi: if (kondisi1 ) then Statement1 else if (kondisi2) then Statement20 else if (kondisi3) then Statement3 else if (kondisi4) then Statement4 end_if end_if Created By Edi Casnadi - IM 17
  • 18. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma end_if end_if Untuk algoritma lebih dari empat kondisi maka Anda tinggal menambahkan else if dan di akhiri dengan end_if pada baris selanjutnya. Belajar melalui contoh algoritma pemilihan, yaitu: Analisis-1 Menentukan suatu bilangan, apakah termasuk bilangan positif, negatif atau nol. Misalkan bilangan bulat itu adalah Bil Jika Bil > 0 maka bilangan positif Jika Bil < 0 maka bilangan negatif Jika Bil = 0 maka bilangan nol Dalam algoritmanya, yaitu: ALGORITMA Jenis_Bilangan { mencetak pesan “bilangan positif” jika sebuah bilangan bulat yang dibaca dari piranti masukan > 0, atau “bilangan negative” jika bilangan tersebut <0, atau “nol” jika bilangnan tersebut = 0 } DEKLARASI bil  integer DESKRIPSI read(bil) // memasukan bilangan misalnya 3 if (bil>0) then // kondisi pertama bil >0 println(“bilangan positif”) else if ( bil <0 ) then // kondisi kedua bil < 0 println(“bilngan negatif”) else if ( bil=0) then // kondisi ketiga bil=0 println(“nol”) end_if end_if end_if End_algo Pemilihan dalam Java ini bertujuan untuk memilih salah satu dari tiga kemungkinan yang muncul, yaitu apakah bilangan tersebut termasuk bilangan nol, bilngan negatif atau bilangan positif, sesuai dengan kondisi yang berlaku. Created By Edi Casnadi - IM 18
  • 19. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Dengan rumus bentuk umumnya dari bahasa Java, yaitu: If (kondisi1) { Statement_1 } else if (kondisi2) { Statement_2 }else if (kondisi3) { Statement_3 } Keterangan: Jika kondisi1 dievaluasi bernilai true/benar, maka Statement1 yang di eksekusi, sedangkan jika kondisi1 dievaluasi bernilai false, maka ke kondisi2 berikutnya berupa Statement2 yang dieksekusi, tetapi jika yang dievaluasi pada kondisi2 bernilai salah/false maka berlanjut pada kondisi 3 dan jika kondisi 3 memenuhi kondisi maka statement3 yang akan dieksekusi tetapi kalau tidak ada, maka tidak ada yang ditampilkan satupun statement di atas. Belajar melalui contoh-contoh dalam algoritma dan bahasa Java, yaitu: Contoh-1, algoritma untuk menentukan bilangan positif, negatif, atau nol, yaitu ALGORITMA Jenis_Bilangan {untuk menentukan bilangan yang bernilai negatif, positif, nol..... } DEKLARASI bil  integer ket  String DESKRIPSI read( bil ) if (bil > 0 ) ket = bilangan positif else if (bil <0 ) ket = bilangan negatif else ket = bilangan nol end_if end_if print( ket ) { input dari keyboard } { verifikasi kondisi 1 } {verifikasi kondisi 2 } {menampilkan variabel ket } End_algo Created By Edi Casnadi - IM 19
  • 20. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Untuk menentukan sifat bilangan dalam bahasa Java, yaitu: import java.io.*; public class Pembandingan { static int bil; static String ket, angka; public static void proses() throws IOException{ InputStreamReader reader = new InputStreamReader(System.in); BufferedReader input = new BufferedReader(reader); System.out.print("Masukan sebuah angka ? "); angka = input.readLine(); bil = Integer.parseInt(angka); if (bil >0) ket = ”bilangan positif” ; else if (bil <0 ) ket = ”bilangan negatif”; else ket = ”bilangan nol ”; System.out.println( ket ); {verifikasi kondisi 1 } {verifikasi kondisi 2 } { menampilkanl ket } } public static void main(String args[]) throws IOException{ proses(); } } Contoh-2 , Matematika untuk menentukan rumus abc dalam algoritma, yaitu: ALGORITMA Rumus_ABC {menentukan dari persamaan kuadrat dengan ketentuan D<0 akar-akar persamaan imaginer, D = akar-akar sama, D > dua akar berlainan} DEKLARASI a, b, c, d, x1, x2  double Created By Edi Casnadi - IM 20
  • 21. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma DESKRIPSI a=4, b=-13, c =-12 d = b*b – (4*a*c) if ( D<0 ) then print("Akar-akar persamaan imaginer") else if ( D=0 ) then print("Akar-akar pers. nyata tetapi kembar."); x1 = b D 2*a print("x1 = x2 = " + x1) else print("Akar-akar pers. nyata dan berbeda") b D 2*a b D x2 = 2*a x1 = end_if end_if print(x1,x2) End_algo Pemilihan untuk kasus rumus abc dalam bahasa Java, yaitu: public class abc{ public static void main(String[] args) { double a = 4; double b = -13; double c = -12; double D = b*b – (4*a*c); double x1, x2; System.out.println("Pers. kuadrat a*x^2+b*x+c=0, di mana"); System.out.println("a = " + a); System.out.println("b = " + b); System.out.println("c = " + c); System.out.println("Menerapkan ABC diketahui bahwa : "); //kondisi untuk determinan if (D<0){ System.out.println("Akar-akar persamaan imaginer."); Created By Edi Casnadi - IM 21
  • 22. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma }else if (D==0){ System.out.println("Akar-akar pers nyata tetapi kembar"); x1 = -b/(2*a); System.out.println("x1 = x2 = " + x1); }else{ System.out.println("Akar-akar pers. nyata dan berbeda."); x1 = (-b+Math.sqrt(D))/(2*a); x2 = (-b-Math.sqrt(D))/(2*a); System.out.println("x1 = " + x1 + " x2 = " + x2); } } } Belajar melalui latihan-latihan dalam bahasa Java latihan-1 Dalam bahasa Java, untuk menentukan nilai pembayaran yang didiskon 20% jika pembelian diatas 100, yaitu: import javax.swing.*; public class Pembelian{ static int dis, beli; // pendefinisian variabel global static float harga,total; public static void masukan() { String bl=JoptionPane.showInputDialog(”Masukan banyak barang?”); String hr=JoptionPane.showInputDialog(”Masukan harga?”); beli = Integer.parseInt(bl); harga = Float.parseFloat(hr); } public static void keluaran(){ total=0; if (beli >= 100){ total=(harga*beli); dis=(total*20/100); dis = total-dis; System.out.println (total+"Diskon = 20% jadi"+dis); }else { total=(harga*beli); dis=(total*5/100); dis = total-dis; System.out.println (total+ "Diskon = 5% jadi "+dis); } } Created By Edi Casnadi - IM 22
  • 23. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma public static void main (String[ ] args) { System.out.println ("PT ANGIN RIBUT”); keluaran(); masukan(); } } Latihan-2 Dalam bahasa Java, Menentukan nilai dan predikat dari sebuah data tertentu, jika nilai >=80 maka A, nilai >=60 maka B, dan seterusnya, yaitu: public class NilaiUjian { static int nilai; // pendefinisian variabel static String ket; public static void DafNilai () { nilai = 75; if (nilai >= 80) ket="Predikat A"; else if (nilai >= 69) ket="Predikat B"; else if (nilai >= 56) ket="Predikat C"; else if (nilai >= 40) ket="Predikat D"; else ket="Predikat E"; } //akhir dari method DafNilai() public static void hasil () { System.out.println ("Nilai = " + nilai); System.out.println (”Keterangan = " + ket); } //akhir dari method hasil() public static void main (String[ ] args) { DafNilai(); //memanggil method hasil(); } } Created By Edi Casnadi - IM 23
  • 24. www.csa-interganesha.com 8. Tutorial Struktur Pemilihan Algoritma Pemilihan bersarang (if bersarang) Pemilihan bersarang merupakan suatu pemilihan yang di dalam pemilihan terdapat pemilihan lagi, artinya di dalam struktur if (....) then terdapat struktur if (...) then lagi tanpa kata else. Inilah alasan kenapa dikatakan pemilihan bersarang, Bentuk umum algoritma pemilihan bersarang, yaitu: If (kondisi) then print(“Statement biasa”) if (kondisi bersarang) then print(“Statement bersarang”) end_if end_if contoh algoritma pemilihan bersarang dibawah ini: if (ada= true ) then if (a < b) then print(“a lebih besar b”) end_if // if bersarang //statement bersarang end_if Keterangan: Kita perhatikan dalam menuliskan if bersarang di atas, tidak ada kata else melainkan ditulis secara langsung dengan pernyataan if then lagi secara langsung, nah inilah kenapa disebut pemilihan bersarang, dikarena dalam pemilihan terdapat pemilihan lagi (dalam if then terdapat if then lagi). Created By Edi Casnadi - IM 24
  • 25. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Algoritma If (... ) then bersarang dalam bentuk flowchart, sebagai berikut: false/salah kondisi salah true/benar Kondisi benar bersarang Statement3 Statement2 Statement1 end end Gambar 9 Flowchart peilihan/kondisi dengan tiga atau lebih kondisi Keterangan: Jika kita lihat bagan di atas hampir mirip, seperti susunan bagan pemilihan dua kondisi, tetapi itu sangat berbeda, coba kita perhatikan. Untuk pemilihan dua kondisi, yaitu pada saat ke arah kondisi ke dua maka kondisi sebelumnya harus bernilai salah/false. Untuk pemilihan bersarang yaitu pada saat ke arah kondisi kedua maka kondisi sebelumnya harus bernilai benar/true. Coba perhatikan baik-baik perbedaan struktur bagan kondisi bersarang dengan kondisi pada pemilihan lebih dari dua. Keduanya sangat berbeda dan tergantung pada syarat pemilihan dua kondisi tersebut. Belajar melalui contoh-contoh untuk if bersarang, yaitu Contoh1, menentukan harga diskon, yaitu: ALGORITMA Harga_Diskon { untuk menentukan harga diskon dan mengecek anggota bukan, jika memenuhi keduanya maka akan didiskon, sebaliknya tidak didiskon } DEKLARASI harga, jml  integer tot  float Created By Edi Casnadi - IM 25
  • 26. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma anggota  string DESKRIPSI tot  0 jml 0 harga  100000 if ( harga >=100000) then anggota  ”yes” if (anggota=”yes”) then println("Anggota"); jml  4; println("Diskon"); tot  (harga*jml) - ((harga*jml*50)/100); println("Harga di diskon 50%"); println("Harga diskon Rp "+ tot); else println("Bukan Anggota"); end_if else jml=4; println("Tanpa di diskon"); tot= harga*jml; println("Harga Rp "+ tot); end_if End_algo Pemilihan bersarang dalam bahasa Java public class harga_diskon { static int harga, jml=0; static float tot=0; static String anggota; public static void masukan(){ harga=100000; anggota="yes"; jml=4; } public static void proses(){ System.out.println("harga = " + harga*jml); Created By Edi Casnadi - IM 26
  • 27. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma if (harga>=100000) { if (anggota=="yes") { System.out.println("Anggota"); System.out.println("Diskon"); tot= (harga*jml)-((harga*jml*50)/100); System.out.println("Harga di diskon 50%"); }else { System.out.println("Bukan Anggota"); } }else{ System.out.println("Tanpa di diskon"); tot= harga*jml; } } public static void keluaran(){ System.out.println("Harga diskon Rp "+ tot); } public static void main(String[] args) { masukan(); proses(); keluaran(); } } Hasil output harga = 400000 Diskon Harga di diskon 50% Harga diskon Rp 200000.0 Process completed. Belajar melalui latihan-latihan dalam bahasa Java Latihan-1, Pemilihan bersarang untuk seleksi jadi karyawan bahasa Java, yaitu: public class data { public static void karyawan(){ int umur = 23; String pendidikan = "diploma"; Created By Edi Casnadi - IM // pendefinisian variabel 27
  • 28. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma System.out.println ("Umur = " + umur); System.out.println ("Pendidikan = " + pendidikan); if (umur <= 30) { if (pendidikan == "diploma") System.out.println ("Diterima menjadi karyawan Gol C"); else if (pendidikan=="sarjana") System.out.println ("Diterima menjadi karyawan Gol B"); else System.out.println ("Tidak diterima menjadi karyawan"); } else { System.out.println ("Maaf umur Anda ketuaan"); } } } public class PendKaryawan { //program utama public static void main (String[ ] args) { data dt = new data(); dt.karyawan(); } } Hasil output: Umur = 23 Pendidikan = diploma Diterima menjadi karyawan Gol C Process completed. Latihan-2, Bersarang untuk daftar menu buah-buahan dalam bahasa Java, yaitu: import javax.swing.*; class menu { static int pilih; //variabel global public static void daftar(){ System.out.println ("DAFTAR HARGA BUAH-BUAHAN"); System.out.println ("1. Mangga"); System.out.println ("2. Apel "); System.out.println ("3. Nanas"); System.out.println ("4. Alpukat"); String pil=JOptionPane.showInputDialog("Pilihan Anda ? "); Created By Edi Casnadi - IM 28
  • 29. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma pilih=Integer.parseInt(pil); } public static void harga(){ if (pilih==1) { System.out.println ("Anda pilih buah Mangga"); System.out.println ("Harga 25000/kg"); }else if (pilih==2){ System.out.println ("Anda pilih buah Apel"); System.out.println ("Harga 20000/kg"); }else if (pilih==3){ System.out.println ("Anda pilih buah Nanas"); System.out.println ("Harga 15000/kg"); }else{ System.out.println ("Anda pilih buah Alpukat "); System.out.println ("Harga 18000/kg"); } } } public class HargaBuah { public static void main (String[ ] args) { menu mn = new menu(); mn.daftar(); //memanggil method daftar System.out.println ("-------------------------------------"); mn.harga(); //memanggil method harga } } Hasil output DAFTAR HARGA BUAH-BUAHAN 1. Mangga 2. Apel 3. Nanas 4. Alpukat ----------------------------------------Anda pilih buah Apel Harga 20000/kg Process completed. Created By Edi Casnadi - IM 29
  • 30. www.csa-interganesha.com 3. Tutorial Struktur Pemilihan Algoritma Struktur Switch Case Pendahuluan Penggunaan switch sebenarnya hampir sama dengan if(…)then bertingkat(kondisi lebih dari tiga). Kapan kita menggunakan struktur switch? yaitu untuk percabangan yang berjumlah lebih dari dua atau lebih dari tiga kondisi. Karena itu switch case bisa dijadikan alternatif lain dalam menyelesaikan kasus pemilihan. Penggunaan switch case lebih tepat dibandingkan menggunakan if(…)then ketika menghadapai pemilihan bertingkat. Switch case mempunyai kelemahan karena hanya bisa dikerjakan ketika memenuhi beberapa syarat yaitu pembatasan dalam penggunaan tipe data seperti: byte, short, int, ataupun char. Itulah secara singkat mengenai struktur switch case. Switch case dalam algoritma Pemilihan switch.. case, dimaksudkan untuk menangani banyak kemungkinan kemunculan yang berlebihan. Bentuk umum penulisan switch case dalam algoritma, yaitu: Switch (ekspresi) case <konstanta 1> : Statement_1 case <konstanta 2> : Statement_2 case <konstanta 3> : Statement_3 default Statement_4 End_switch Keterangan: <kondisi 1>, <kondisi 2> dan seterusnya akan bernilai benar atau salah tergantung dari nilai ekspresinya, setiap kondisi akan diperiksa satu demi satu untuk mencari nilai kebenarannya, mulai dari kondisi pertama( <kondisi 1> ) sampai kondisi akhir ( <kondisi 3> ) untuk ditemukannya suatu kondisi yang bernilai benar. Jika tidak ketemu maka secara otomatis pernyataan default yang akan di eksekusi atau ditampilkan dalam alat keluaran seperti monitor. Sekali lagi saya katakan bahwa struktur switch case untuk menyederhanakan dalam penulisan if-then-else yang bertingkat - tingkat. Statement switch case berisi ungkapan (pemilih) dan sederetan statement/aksi, yang masing-masing diawali satu atau lebih konstanta. Created By Edi Casnadi - IM 30
  • 31. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Switch case dalam bahasa Java Bentuk umum struktur switch … case dalam bahasa Java, yaitu: Switch (ekspresi) { case <konstanta 1> : Statement 1 case <konstanta 2> : Statement 2 . . default : Default Statement } Struktur switch case, yaitu mengevaluasi dan membandingkan ekspresi, untuk semua konstanta case dan mengendalikan eksekusi program ke pernyataan case yang cocok. Jika tidak ada konstanta case yang cocok dengan ekspresi maka program menuju ke default statement jika program memberikan pernyataannya. Hal yang perlu diperhatikan dalam analisa kasus dengan switch case adalah bahwa ekspresi yang bisa ditangani dalam switch .. case hanya yang nilainya bisa dienumerasi, yaitu integer (dan tipe range), boolean, dan tipe enum. Berikut adalah tiga fitur penting dalam pernyataan switch, yaitu 1. Pernyataan switch berbeda dengan pernyataan if..then di mana switch hanya dapat menguji kesamaan, sedangkan pernyataan if .. then dapat melakukan evaluasi sembarang tipe ekspresi boolean. Dengan demikian, switch terlihat seperti hanya mencocokan diantara nilai-nilai ekspresi dengan konstantakonstanta case. 2. Tidak ada konstanta case di blok case yang sama dapat mempunyai nilai identik. Tentu saja untuk pernyataan switch bersarang (nested switch) yang diapit switch luar dapat mempunyai konstanta yang sama dengan konstanta di switch luar 3. Pernyataan switch biasanya lebih efisien dibandingkan pernyataan if .. then bersarang yang dalam. Belajar melalui contoh-contoh algoritma switch case Contoh-1, Algoritma switch case, untuk membuat menu, yaitu: ALGORITMA menu_pilihan { untuk menentukan pilihan menu untuk memudahkan pemilihan tertentu} DEKLARASI a, b, c, pil  Integer DESKRIPSI Created By Edi Casnadi - IM 31
  • 32. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma println (”Pilihan Pemrograman”) println (”1. Penjumlahan ”) println (”2. Pengurangan ”) println (”3. Perkalian ”) pil = 1 //inputan bebas coba ganti-ganti angkanya 1..3 switch (pil) case 1 : println (” Anda pilih Penjumlahan”) a = 3, b = 5 c=a+b println (c) case 2 : println (” Anda pilih Pengurangan”) a = 3, b = 5 c=a-b println (c) case 3 : println (” Anda pilih Perkalian”) a = 3, b = 5 c=a*b println (c) default: println(” Maaf bukan pilihan ”) end_switch End_Algo Contoh-2 Menentukan jenis bilangan tertentu, yaitu: ALGORITMA PilihBilangan { untuk menentukan pilihan apakah bilangan nol, satu, dua dan harus sesuai dengan statement case yang tepat} DEKLARASI a  integer DESKRIPSI a=2 //variabel a dimasukan dengan angka 2 switch (a) //melakukan seleksi terhdp variabel a dan dicocokan dgn case case 0 : print (” Anda pilih bilangan nol”) case 1 : print (” Anda pilih bilangan satu”) Created By Edi Casnadi - IM 32
  • 33. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma case 2 : print (” Anda pilih dua”) case 3 : print (” Anda pilih bilangan tiga”) default: print (” Anda pilih bilangan default”) end_switch End_algo Dalam bahasa Java, yaitu: import javax.swing.*; class PilihBilangan { public static void main (String[] args ) { int a; String pesan = JoptionPane.showInputDialog(“masukan angka ? “); a = Integer.parseInt(pesan); //coba anda masukan angka 2 switch (a) { case 0 : System.out.println(” Anda pilih bilangan nol”); break; case 1 : System.out.println(” Anda pilih bilangan satu”); break; case 2 : System.out.println(” Anda pilih bilangan dua”); break; case 3 : System.out.println(” Anda pilih bilangan tiga”); break; default: System.out.println(” Anda pilih bilangan default”); } } } Hasil output Anda pilih bilangan dua Anda pilih bilangan tiga Anda pilih bilangan default Created By Edi Casnadi - IM 33
  • 34. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Keterangan: Kenapa di dalam bahasa Java ketika di run akan muncul tiga pernyataan seperti hasil run diatas bukan satu pernyataan saja. Sedangkan yang kita pilih a=2 dan seharusnya yang muncul yaitu: Anda pilih bilangan dua. dikarenakan dalam bahasa Java akan terus dilakukan sampai akhir case, untuk menanggulangi hal tersebut kita tambah dengan pernyataan break; Untuk setiap pernyataan diberi pernyataan break; seperti coding dibawah ini. import javax.swing.*; class PilihBilangan2 { public static void main (String[] args ) { int a; String pesan = JoptionPane.showInputDialog(“masukan angka ? “); a = Integer.parseInt(pesan); //coba anda masukan angka 2 switch (a) { case 0 : System.out.println(” Anda pilih bilangan nol”); break; case 1 : System.out.println(” Anda pilih bilangan satu”); break; case 2 : System.out.println(” Anda pilih bilangan dua”); break; case 3 : System.out.println(” Anda pilih bilangan tiga”); break; default: System.out.println(” Anda pilih bilangan default”); } } } Hasil output Anda pilih bilangan dua Process completed. Created By Edi Casnadi - IM 34
  • 35. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Belajar melalui latihan switch case dalam bahasa Java, yaitu: Latihan-1 ,Untuk membuat Menu.: import javax.swing.*; public class MenuOperasi { static int pil; public static void pilihan(){ System.out.println("1. Penjumlahan"); System.out.println("2. Pengurangan"); System.out.println("3. Perkalian"); System.out.println(); String msn = JOptionPane.showInputDialog(“Pilihan Anda ? “); pil=Integer.parseInt(msn); } public static void keluaran(){ int a, b, c; pilihan(); //memanggil method pilihan(); switch (pil) { case 1 : System.out.println("Pilihan Anda Penjumlahan"); a=3; b=5; c=a+b; System.out.println("hasil penjumlahan = " + c); break; case 2 : System.out.println("Pilihan Anda Pengurangan"); a=3; b=5; c=a - b; System.out.println("hasil pengurangan = " + c); break; case 3 : System.out.println("Pilihan Anda Perkalian"); a=3; b=5; c=a * b; System.out.println("hasil perkalian = " + c); break; default: System.out.println("Maaf bukan pilihan"); } } public static void main(String[] args) { kelauaran(); //memanggil method keluaran() } } Created By Edi Casnadi - IM 35
  • 36. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Hasil output 1. Penjumlahan 2. Pengurangan 3. Perkalian Pilihan Anda ? 3 hasil perkalian = 15 Latihan-2, Untuk menghitung tarif wartel, yaitu import javax.swing.*; import java.awt.*; public class wartel { static private String J1,J2,M1,M2,D1,D2; static private int hargapk, Jam1,Jam2,Menit1,Menit2,Detik1,Detik2,JWaktu; static float KMenit,KonDetik,KonJam,KonMenit,harganpk; // method perhitungan static void NonPaket(){ int JJam,JDetik,JMenit; System.out.println("Anda Pilih Non Paket"); System.out.println("--------------------------"); J1=JOptionPane.showInputDialog("Masuk Jam"); M1=JOptionPane.showInputDialog("Masuk Menit"); D1=JOptionPane.showInputDialog("Masuk Detik"); J2=JOptionPane.showInputDialog("Keluar Jam"); M2=JOptionPane.showInputDialog("Keluar Menit"); D2=JOptionPane.showInputDialog("Keluar Detik"); Jam1=Integer.parseInt(J1);//konversi string ke integer Jam2=Integer.parseInt(J2); Menit1=Integer.parseInt(M1); Menit2=Integer.parseInt(M2); Detik1=Integer.parseInt(D1); Detik2=Integer.parseInt(D2); //pengurangan JJam=Jam1-Jam2; JMenit=Menit1-Menit2; JDetik=Detik1-Detik2; //perhitungan JWaktu=(JJam*3600)+(JMenit*60)+JDetik; //merubah ke jam, menit dan detik KonJam=JWaktu/3600; Created By Edi Casnadi - IM 36
  • 37. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma KonMenit=JWaktu%3600; KMenit=KonMenit/60; KonDetik=KonMenit%60; //pembayaran System.out.println("Lama Berinternet :" + Math.abs(KonJam) +" Jam : "+ Math.abs(KMenit) +" Menit : "+Math.abs(KonDetik)+"Detik"); harganpk=Math.abs((KMenit*50)) + Math.abs((KonJam*60*50)); System.out.println("Harga Durasi :" +harganpk); String Pesan=JOptionPane.showInputDialog("Pembayaran Rp ? "); int Byr=Integer.parseInt(Pesan); System.out.println("Bayar Rp :" +Byr); float bayar=Byr-harganpk; System.out.println("Kembali Rp :" +bayar); } //mehod paket static void Paket(){ System.out.println("ANDA PILIH PAKET"); System.out.println("-----------------"); System.out.println("1. 3 JAM"); System.out.println("2. 4 JAM"); String Pesan=JOptionPane.showInputDialog("Pilihan PAKET Anda ? "); System.out.println("--------------------------"); int pil=Integer.parseInt(Pesan); switch (pil){ case 1: hargapk=50*180; System.out.println("Harga Paket : "+ hargapk); break; case 2: hargapk=50*240; System.out.println("Harga Paket : "+ hargapk); break; default:System.out.println("Bukan Pilihan PAKET"); } } static void pilihan(){ int pilih; System.out.println(" WARTEL eSOFT"); Created By Edi Casnadi - IM 37
  • 38. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma System.out.println("-----------------"); System.out.println("1. NON PAKET"); System.out.println("2. PAKET"); String Pesan=JOptionPane.showInputDialog("Pilihan Anda ? "); System.out.println("--------------------------"); pilih=Integer.parseInt(Pesan); switch (pilih){ case 1:NonPaket();break; case 2:Paket();break; default:System.out.println("Bukan Pilihan"); } } public static void main(String[] args) { pilihan(); System.out.println("----------------------------"); System.out.println("Terimakasih"); } } Tampilan ketika di run Created By Edi Casnadi - IM 38
  • 39. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Kasus tambahan, Marilah kita belajar switch case dengan menggunakan method, untuk menyelesaikan persoalan pemilihan operasi penjumlahan, pengurangan dan perkalian, yaitu: Dalam algoritma, yaitu: ALGORITMA Pemilihan_Operasi { {menentukan Anda harus mengisikan pilihan yaitu penjumlahan, pengurangan, perkalian } DEKLARASI pil, a, b, hasil  integer DESKRIPSI read( pil  pilihan 1,2,3 ) read( a,b ) //memasukan pil dari keyboard switch( pil) case 1 : println"Anda Memilih Penjumlahan" hasil  a + b case 2 : println"Anda Memilih Pengurangan” hasil  a - b case 3 : println"Anda Memilih Perkalian" hasil  a * b default : println"Bukan Pilihan"; end_switch println(hasil); End_algo Cobalah kita terjemahkan algoritma di atas, menggunakan method dalam bahasa Java, yaitu: import javax.swing.*; public class OperasiSwitch { public static int pil, hasil; public static int d, e; static void Pilihan (){ System.out.println("Pilihan Anda ?"); System.out.println("-----------------------"); System.out.println("1. Penjumlahan"); System.out.println("2. Pengurangan"); System.out.println("3. Perkalian"); System.out.println(); Created By Edi Casnadi - IM 39
  • 40. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma String angka1; angka1 = JOptionPane.showInputDialog("Pilihan Anda ?"); pil = Integer.parseInt(angka1); //konversi string ke integer keluar(); //pemanggilan method keluar } int Penjumlahan(int a,int b){ return a + b; } int Pengurangan(int a,int b){ return a - b; } int Perkalian(int a,int b){ return a * b; } static void masuk(){ String angka1, angka2; angka1 = JOptionPane.showInputDialog("Masukan angka1 ?"); d = Integer.parseInt(angka1); //konversi string ke integer angka2 = JOptionPane.showInputDialog("Masukan angka2 ?"); e = Integer.parseInt(angka2); //konversi string ke integer } static void keluar() { OperasiSwitch sw = new OperasiSwitch; //definisi kelas switch (pil){ case 1: System.out.println("Anda Pilih Penjumlahan"); masuk(); //pemanggilan method Pilihan System.out.println(" JML = "+sw.Penjumlahan(d,e));break; case 2: System.out.println("Anda Pilih Pengurangan"); masuk(); //pemanggilan method masuk System.out.println("Kurang = "+sw.Pengurangan(d,e));break; case 3: System.out.println("Anda Pilih Perkalian"); masuk(); //pemanggilan method masuk System.out.println("Kali = "+sw.Perkalian(d,e));break; default : System.out.println("Bukan pilihan"); } } Created By Edi Casnadi - IM 40
  • 41. www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma public static void main(String[] args) { Pilihan(); //pemanggilan method Pilihan } } Hasil output, yaitu: Pilihan Anda ? ----------------------1. Penjumlahan 2. Pengurangan 3. Perkalian Anda Pilih Pengurangan Pengurangan = 3 Keterangan: Program di atas, membuat pogram pemilihan yaitu penjumlahan, pengurangan dan perkalian, dengan dipecah menjadi beberapa method, seperti:  Method penjumlahan(), //berupa method integer Untuk menghitung penjumlahan, yaitu a + b.  Method pengurangan(), //berupa method integer Untuk menghitung pengurangan, yaitu a - b.  Method perkalian(), //berupa method integer Untuk menghitung perkalian, yaitu a * b.  Method masuk(), //berupa method static Untuk memasukan variabel d dan e, yang akan dikirim dalam method lain.  Method keluar(), //berupa method static Untuk menampilkan sesuai dengan pilihan yang dipilih.  Method Pilihan(), //berupa method static Untuk menampilkan keterangan, pengoperasian, seperti tampilan berikut: Pilihan Anda ? ----------------------1. Penjumlahan 2. Pengurangan 3. Perkalian Created By Edi Casnadi - IM 41