kondisional if then algoritma

41
www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma Created By Edi Casnadi - IM 1 Judul : Struktur Pemilihan (If then) Penulis : Edi Casnadi Level : Basic Hak : csa-interganesha / www.csa-interganesha.com Kategori : 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

Upload: casnadi

Post on 21-Nov-2014

4.120 views

Category:

Education


3 download

DESCRIPTION

Tutorial algoritma tentang penyelesaian suatu kondisional/pemilihan .

TRANSCRIPT

Page 1: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 1

Judul : Struktur Pemilihan (If then) Penulis : Edi Casnadi Level : Basic Hak : csa-interganesha / www.csa-interganesha.com Kategori : 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

Page 2: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 2

2. 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 salah

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”

stop

kondisi

Statement_1

Page 3: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 3

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.

Page 4: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 4

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 Algoritma

PEMILIHAN / KODISIONAL Bahasa Java

Satu kondisi if (kondisi) then Statement_1 End_if

Satu kondisi if ( kondisi) { Statement_1 }

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

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

Tiga kondisi If (kondisi1) then Statement_1 else if (kondisi2) then Statement_2 else if (kondisi3) then Statement_3 end if end if dan seterusnya……………

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

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.

Page 5: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 5

Struktur penulisan else, yaitu if … then… else, dalam bahasa Indonesia bisa diartikan sebagai berikut : jika…maka..selain itu. 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

Gambar 4 Bagan alir pemilihan/kondisi dengan dua kondisi

Stop

kondisi

Statement_1 Statement_2

Page 6: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 6

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 // jika bil dibagi 2 = 0 maka bil adalah bilangan

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

Page 7: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 7

Jadi hasil perhitungan tersebut yaitu: Bilangan Genap Bilangan Ganjil

2 4 6 8 10

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() } }

Page 8: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 8

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 salah

Gambar 5 Flowchart peilihan/kondisi dengan satu kondisi

Statement

stop

kondisi

Page 9: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 9

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}

Page 10: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 10

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 //jika ans sama dengan y maka tampil Iya println(”benar”) end_if

End_algo 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.

Page 11: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 11

Menentukan bilangan nol dalam algoritma flowchart { Algoritma kondisi yaitu :menentukan suatu kondisi tertentu, jika kondisi tersebut memenuhinya maka statement akan dijalankan } ya tidak 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;

Integer bil

bil = 0

bil = 0

Stop

Start

variabel ini bernilai NOL

Page 12: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 12

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

Page 13: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 13

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: salah benar benar salah

Gambar 7 Flowchart pemilihan dua kondisi

Statement1

Kondisi1

Kondisi2

Statement1

End

Page 14: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 14

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 }

Page 15: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 15

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 );

Page 16: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 16

} 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

Page 17: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 17

else Statement_5 end_if end_if end_if end_if

Bentuk umum pemilihan flowchart (if …then else if then else), yaitu: benar kondisi1 salah benar kondisi2 salah salah Kondisi3 benar

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

Statement2

Statement3

stop

Statement1

Page 18: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 18

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.

Page 19: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 19

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 ) { input dari keyboard } if (bil > 0 ) { verifikasi kondisi 1 } ket = bilangan positif else if (bil <0 ) {verifikasi kondisi 2 } ket = bilangan negatif else ket = bilangan nol end_if end_if print( ket ) {menampilkan variabel ket } End_algo

Page 20: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 20

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) {verifikasi kondisi 1 } ket = ”bilangan positif” ; else if (bil <0 ) {verifikasi kondisi 2 } ket = ”bilangan negatif”; else ket = ”bilangan nol ”; System.out.println( ket ); { 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

Page 21: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 21

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 = a

Db*2

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

x1 = a

Db*2

x2 = a

Db*2

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.");

Page 22: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 22

}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); } }

Page 23: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 23

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(); } }

Page 24: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 24

8. 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 // if bersarang print(“a lebih besar b”) //statement bersarang end_if 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).

Page 25: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 25

Algoritma If (... ) then bersarang dalam bentuk flowchart, sebagai berikut: false/salah true/benar salah benar

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

Statement1

end

Statement3 Statement2

end

kondisi

Kondisi bersarang

Page 26: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 26

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);

Page 27: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 27

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; // pendefinisian variabel String pendidikan = "diploma";

Page 28: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 28

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 ? ");

Page 29: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 29

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.

Page 30: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 30

3. 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.

Page 31: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 31

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 konstanta-konstanta 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

Page 32: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 32

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”)

Page 33: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 33

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

Page 34: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 34

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.

Page 35: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 35

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() } }

Page 36: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 36

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;

Page 37: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 37

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");

Page 38: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 38

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

Page 39: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 39

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 ) //memasukan pil dari keyboard read( a,b )

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();

Page 40: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 40

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"); } }

Page 41: Kondisional If then Algoritma

www.csa-interganesha.com Tutorial Struktur Pemilihan Algoritma

Created By Edi Casnadi - IM 41

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