SlideShare a Scribd company logo
1 of 9
Download to read offline
Modul PBO – Teknokrat
12
STRUKTUR KONTROL
Tujuan
Praktikan dapat memahami, menjelaskan, dan menerapkan tentang struktur kontrol
percabangan dan pengulangan.
PERCABANGAN
Suatu Struktur dasar algoritma yang memiliki satu atau lebih kondisi tertentu dimana sebuah
instruksi dilaksanakan jika sebuah kondisi/persyaratan terpenuhi. Ada beberapa bentuk struktur
dasar operator pemilihan ini, yaitu:
· Pernyataan if
· Pernyataan if-else
· Pernyataan switch-case
Pernyataan-pernyataan tersebut memerlukan suatu kondisi, sebagai basis dalam pengambilan
keputusan. Kondisi umum yang dipakai berupa keadaan benar dan salah, operator yang bisa
digunakan berupa operator relasi atau menggunakan operator logika.
PERNYATAAN IF
Pernyataan if akan menentukan sebuah pernyataan (atau blok kode) yang akan eksekusi jika dan
hanya jika persyaratan bernilai benar (true). Bentuk dari pernyataan if,
if( boolean_expression )
statement;
atau
if( boolean_expression ){
statement1;
statement2;
. . .
}
dimana, boolean_expression adalah sebuah penyataan logika (true/false) atau variabel bertipe
boolean. Gambar 2.1 berikut merupakan diagram alur (flowchart) dari struktur pemilihan if.
BAB
2
Modul PBO – Teknokrat
13
Gambar 2. 1 Flowchart struktur pemilihan if
Bentuk pernyataan ini dilaksanakan jika dan hanya jika kondisi yang diinginkan terpenuhi, jika tidak
program tidak memberikan hasil apa-apa.
Program 2-1
public class Percabangan {
public static void main(String [] args) {
// program untuk mencetak bilangan jika dibawah 10
int bil = 7;
if(bil < 10)
System.out.println("Angka " + bil + " kurang dari 10");
}
}
Hasil Output
Angka 7 kurang dari 10
Penjelasan:
Tampak bahwa jika nilai ‘bil’ lebih dari atau sama dengan 10, maka program tidak menghasilkan apa-
apa.
PERNYATAAN IF-ELSE
Pernyataan if-else digunakan apabila kita ingin mengeksekusi beberapa pernyataan dengan kondisi
true dan pernyataan yang lain dengan kondisi false. Bentuk pernyataan if-else,
if( boolean_expression )
statement;
else
statement;
dapat juga ditulis seperti,
if( boolean_expression ){
statement1;
statement2;
. . .
}else{
Modul PBO – Teknokrat
14
statement1;
statement2;
. . .
}
Gambar 2.2 berikut merupakan diagram alur (flowchart) dari struktur pemilihan if-else.
Gambar 2. 2 Flowchart struktur pemilihan if-else
Arti dari pernyataan if-else:
· Jika kondisi benar, maka if code dieksekusi.
· Sedangkan bila kondisi bernilai salah, maka else code yang dieksekusi.
Masing-masing if code dan else code dapat berupa sebuah pernyataan tunggal, pernyataan
majemuk ataupun pernyataann kosong.
Program 2-2
public class Percabangan {
public static void main(String [] args) {
int bil = 13;
if(bil < 10)
System.out.println("Angka " + bil + " kurang dari 10");
else
System.out.println("Angka " + bil + " lebih dari 10");
}
}
Hasil Output
Angka 13 lebih dari 10
Penjelasan:
Tampak bahwa jika nilai yang diberikan lebih dari atau sama dengan 10, maka program akan
memberi pesan “Angka … lebih dari 10”.
Modul PBO – Teknokrat
15
PERNYATAAN IF-ELSE-IF
Pernyataan pada bagian kondisi else dari blok if-else dapat menjadi struktur if-else yang lain. Kondisi
struktur seperti ini mengijinkan kita untuk membuat seleksi persyaratan yang lebih kompleks.
Bentuk pernyataan if-else if,
if( boolean_expression1 )
statement1;
else if( boolean_expression2 )
statement2;
else
statement3;
Sebagai catatan: anda dapat memiliki banyak blok else-if sesudah pernyataan if. Blok else bersifat
opsional dan dapat dihilangkan. Pada contoh yang ditampilkan di atas, jika boolean_expression1
bernilai true, maka program akan mengeksekusi statement1 dan melewati pernyataan yang lain. Jika
boolean_expression2 bernilai true, maka program akan mengeksekusi statement2 dan melewati
statement3.
Program 2-3
public class Percabangan2 {
public static void main(String [] args) {
int na; // nilai akhir
char hm; // huruf mutu
na = 88;
if(na > 85) { hm = 'A'; }
else if(na > 75) { hm = 'B'; }
else if(na > 65) { hm = 'C'; }
else if(na > 55) { hm = 'D'; }
else { hm = 'E'; }
System.out.println("Huruf Mutu = " + hm);
}
}
Hasil Output
Huruf Mutu = A
PERNYATAAN SWITCH-CASE
Cara lain untuk membuat cabang adalah dengan menggunakan kata kunci switch. Switch
mengkonstruksikan cabang untuk beberapa kondisi dari nilai. Bentuk pernyataan switch,
switch( switch_expression ){
case case_selector1:
statement1; //
statement2; //block 1
. . . //
break;
case case_selector2:
statement1; //
statement2; //block 2
. . . //
break;
Modul PBO – Teknokrat
16
default:
statement1; //
statement2; //block n
break;
}
Switch expression adalah ekspresi integer atau karakter dan case_selector1, case_selector2 dan
seterusnya adalah konstanta unik dari nilai integer atau karakter.
Ketika pernyataan switch ditemukan pada potongan kode program, compiler pertamakali akan
memeriksa switch_expression, dan menuju ke case yang akan menyamakan nilai yang dimiliki oleh
switch_expression.
Selanjutnya program akan mengeksekusi pernyataan pada dari kode setelah case yang ditemukan
sampai menemui pernyataan break, selanjutnya akan mengabaikan pernyataan yang lainnya hingga
akhir dari struktur dari pernyataan switch.
Jika tidak ditemui case yang cocok, maka program akan mengeksekusi blok default. Sebagai catatan,
bahwa bagian blok default adalah opsional. Sebuah pernyataan switch bisa jadi tidak memiliki blok
kode default. Gambar 2.3 berikut merupakan diagram alur (flowchart) dari struktur pemilihan
switch-case.
Gambar 2. 3 Flowchart struktur pemilihan switch-case
Program 2-4
public class Percabangan3 {
public static void main(String [] args) {
int no_hari = 3;
String nama_hari;
switch(no_hari) {
case 1: nama_hari = "Minggu"; break;
case 2: nama_hari = "Senin"; break;
case 3: nama_hari = "Selasa"; break;
case 4: nama_hari = "Rabu"; break;
case 5: nama_hari = "Kamis"; break;
Modul PBO – Teknokrat
17
case 6: nama_hari = "Jum'at"; break;
case 7: nama_hari = "Sabtu"; break;
default: nama_hari = "Tidak terdaftar"; break;
}
System.out.println("Nama hari ke-" + no_hari + ": " + nama_hari);
}
}
Hasil Output
Nama hari ke-3: Selasa
PENGULANGAN
Suatu Struktur yang terdiri dari sebuah atau sekelompok instruksi yang diulang untuk jumlah
tertentu. Baik yang terdefinisikan ataupun tidak. Struktur pengulangan terdiri atas dua bagian, yaitu
kondisi pengulangan dan isi/badan pengulangan. Kondisi pengulangan berupa ekspresi boolean yang
harus dipenuhi untuk melaksanakan pengulangan. Isi atau badan pengulangan berupa satu atau
lebih pernyataan (aksi) yang akan diulang.
PERNYATAAN FOR
Pernyataan for digunakan untuk menghasilkan pengulangan (looping) beberapa kali tanpa
penggunaan kondisi apapun. Pada umumnya looping yang dilakukan oleh for telah diketahui batas
awal, syarat looping dan perubahannya. Selama kondisi terpenuhi, maka pernyataan akan terus
dieksekusi. Diagram alir untuk pernyataan for dapat dilihat pada Gambar 2.4. Bentuk pernyataan for:
for(inisialisasi; kondisi; iterasi){
pernyataan;
}
Gambar 2. 4 Flowchart pernyataan for
Modul PBO – Teknokrat
18
Program 2-5
public class Pengulangan {
public static void main(String [] args) {
// Program untuk mencetak bilangan 1 - 15
for(int i=1; i<=15; i++) {
System.out.print(i + " ");
}
}
}
Hasil Output
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Pada contoh yang melibatkan pernyataan for di atas (Program 2-5), kenaikan variabel pengendali
loop berupa nilai positif. Sebenarnya kenaikan terhadap variabel pengendali loop bisa diatur bernilai
negatif. Berikut adalah contoh programnya:
Program 2-6
public class Pengulangan {
public static void main(String [] args) {
// Program untuk mencetak bilangan 15 - 1
for(int i=15; i>=1; i--) {
System.out.print(i + " ");
}
}
}
Hasil Output
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Pernyataan for dapat berada di dalam pernyataan for lainnya yang biasa disebut nested for. Berikut
contoh programnya:
Program 2-7
public class Pengulangan2 {
public static void main(String [] args) {
int tinggi = 4;
System.out.println("Tinggi Segitiga: " + tinggi);
for(int i=0; i<=tinggi; i++) {
for(int j=0; j<i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
Modul PBO – Teknokrat
19
Hasil Output
Tinggi Segitiga: 4
*
**
***
****
PERNYATAAN WHILE
Pernyataan while merupakan salah satu pernyataan yang berguna untuk memproses suatu
pernyataan atau beberapa pernyataan beberapa kali. Pada pernyataan ini pengecekan terhadap
loop dilakukan di bagian awal (sebelum tubuh loop). Pernyataan while memungkinkan statemen-
statemen yang ada didalamnya tidak diakukan sama sekali. Bentuk pernyataan while:
while (kondisi){
pernyataan;
}
Berdasarkan Gambar 2.5, dapat dilihat bahwa ada kemungkinan statement tidak dijalankan sama
sekali, yaitu apabila hasil pengujian condition yang pertama kali bernilai false.
Gambar 2. 5 Flowchart pernyataan while
Program 2-8
public class Pengulangan3 {
public static void main(String [] args) {
int bil = 10;
while(bil <= 20) { System.out.print(bil + " "); bil += 2; }
}
}
Hasil Output
10 12 14 16 18 20
Lembar Kerja Praktikum: Modul 2
Modul PBO – Teknokrat
20
NPM: Asisten:
Nama: Nilai:
Kelas: Tanggal:
Soal
1. [Score: 35] Buatlah program untuk mencetak segitiga seperti berikut (gunakan perulangan while
atau for):
Hasil Output
****
***
**
*
2. [Score: 30] Buatlah program untuk menentukan apakah bilangan yang dimasukan genap atau
ganjil:
Hasil Output
Masukan angka: 33
33 adalah bilangan ganjil
3. [Score: 35] Buatlah program untuk menentukan nilai tertinggi, terendah, dan rata-rata untuk lima
bilangan yang dimasukan:
Hasil Output
Bilangan 1: 33
Bilangan 2: 25
Bilangan 3: 17
Bilangan 4: 44
Bilangan 5: 10
Min: 17
Max: 44
Rata: 25.8

More Related Content

What's hot

aritmatika komputer
aritmatika komputeraritmatika komputer
aritmatika komputerdewi2093
 
Interaksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual ModelInteraksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual ModelEko Kurniawan Khannedy
 
Normalisasi Basis Data
Normalisasi Basis DataNormalisasi Basis Data
Normalisasi Basis DataJoshua Tan
 
Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03KuliahKita
 
Teori bahasa dan automata1
Teori bahasa dan automata1Teori bahasa dan automata1
Teori bahasa dan automata1Nurdin Al-Azies
 
Laporan praktikum modul 7 (dml)
Laporan praktikum modul 7 (dml)Laporan praktikum modul 7 (dml)
Laporan praktikum modul 7 (dml)Devi Apriansyah
 
Modul pratikum pbo - Class dan Object
Modul pratikum pbo - Class dan ObjectModul pratikum pbo - Class dan Object
Modul pratikum pbo - Class dan Objectrahmantoyuri
 
Object oriented programming dengan php
Object oriented programming dengan phpObject oriented programming dengan php
Object oriented programming dengan phpMateri Kuliah Online
 
Finite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBOFinite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBOahmad haidaroh
 
Laporan praktikum basis data my sql
Laporan praktikum basis data my sqlLaporan praktikum basis data my sql
Laporan praktikum basis data my sqlLela Warni
 
Mengapa kita memerlukan basis data
Mengapa kita memerlukan basis dataMengapa kita memerlukan basis data
Mengapa kita memerlukan basis dataAhmad Saktia Yunus
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeAcomic Comic
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktoriAnggi DHARMA
 
Algoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAlgoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAndiNurkholis1
 
Konsep Inheritance
Konsep InheritanceKonsep Inheritance
Konsep InheritanceRiski_kiki
 

What's hot (20)

Algoritma rekursif
Algoritma rekursifAlgoritma rekursif
Algoritma rekursif
 
aritmatika komputer
aritmatika komputeraritmatika komputer
aritmatika komputer
 
Interaksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual ModelInteraksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual Model
 
Normalisasi Basis Data
Normalisasi Basis DataNormalisasi Basis Data
Normalisasi Basis Data
 
Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03Matematika Diskrit - 11 kompleksitas algoritma - 03
Matematika Diskrit - 11 kompleksitas algoritma - 03
 
Teori bahasa dan automata1
Teori bahasa dan automata1Teori bahasa dan automata1
Teori bahasa dan automata1
 
Laporan praktikum modul 7 (dml)
Laporan praktikum modul 7 (dml)Laporan praktikum modul 7 (dml)
Laporan praktikum modul 7 (dml)
 
Modul pratikum pbo - Class dan Object
Modul pratikum pbo - Class dan ObjectModul pratikum pbo - Class dan Object
Modul pratikum pbo - Class dan Object
 
Oracle transaksi
Oracle transaksiOracle transaksi
Oracle transaksi
 
Object oriented programming dengan php
Object oriented programming dengan phpObject oriented programming dengan php
Object oriented programming dengan php
 
Finite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBOFinite State Automata - Materi 3 - TBO
Finite State Automata - Materi 3 - TBO
 
Pengantar database
Pengantar databasePengantar database
Pengantar database
 
Laporan praktikum basis data my sql
Laporan praktikum basis data my sqlLaporan praktikum basis data my sql
Laporan praktikum basis data my sql
 
Modul praktikum-pemrograman java dgn netbeans
Modul praktikum-pemrograman java dgn netbeansModul praktikum-pemrograman java dgn netbeans
Modul praktikum-pemrograman java dgn netbeans
 
Mengapa kita memerlukan basis data
Mengapa kita memerlukan basis dataMengapa kita memerlukan basis data
Mengapa kita memerlukan basis data
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression tree
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktori
 
Algoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAlgoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - Perulangan
 
Konsep Inheritance
Konsep InheritanceKonsep Inheritance
Konsep Inheritance
 
Organisasi komputer-4
Organisasi komputer-4Organisasi komputer-4
Organisasi komputer-4
 

Similar to Modul PBO Bab-02 - Struktur Kontrol

JENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdfJENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdfJurnal IT
 
Jeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolJeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolKristanto Wijaya
 
Modul6 1225443461187631-8
Modul6 1225443461187631-8Modul6 1225443461187631-8
Modul6 1225443461187631-8aan_junior147
 
JENI Slides-Intro1-Bab06-Struktur kontrol
JENI Slides-Intro1-Bab06-Struktur kontrolJENI Slides-Intro1-Bab06-Struktur kontrol
JENI Slides-Intro1-Bab06-Struktur kontrolDimara Hakim
 
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
 
PBO Pert 4 Praktek
PBO Pert 4 PraktekPBO Pert 4 Praktek
PBO Pert 4 PraktekRUDISELAMAT2
 
5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutan5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutanAnna Fitria
 
Struktur Kontrol PHP
Struktur Kontrol PHPStruktur Kontrol PHP
Struktur Kontrol PHPMutiara Ayu
 
DASPRO - KENDALI PERBANGAN.pptx
DASPRO - KENDALI PERBANGAN.pptxDASPRO - KENDALI PERBANGAN.pptx
DASPRO - KENDALI PERBANGAN.pptxAnnaUrnika1
 
Struktur kontrol perulangan
Struktur kontrol perulanganStruktur kontrol perulangan
Struktur kontrol perulanganTaslim Chaniago
 
4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptx4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptxAlifkemal
 
Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Mr. FM
 
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada JavaPBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada JavaRUDISELAMAT2
 
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IIShofura Kamal
 

Similar to Modul PBO Bab-02 - Struktur Kontrol (20)

JENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdfJENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdf
 
Jeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolJeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrol
 
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
 
modul6
modul6modul6
modul6
 
JENI Slides-Intro1-Bab06-Struktur kontrol
JENI Slides-Intro1-Bab06-Struktur kontrolJENI Slides-Intro1-Bab06-Struktur kontrol
JENI Slides-Intro1-Bab06-Struktur kontrol
 
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
 
FLOW CONTROL.pdf
FLOW CONTROL.pdfFLOW CONTROL.pdf
FLOW CONTROL.pdf
 
PBO Pert 4 Praktek
PBO Pert 4 PraktekPBO Pert 4 Praktek
PBO Pert 4 Praktek
 
5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutan5. struktur kontrol alur program lanjutan
5. struktur kontrol alur program lanjutan
 
Struktur Kontrol PHP
Struktur Kontrol PHPStruktur Kontrol PHP
Struktur Kontrol PHP
 
DASPRO - KENDALI PERBANGAN.pptx
DASPRO - KENDALI PERBANGAN.pptxDASPRO - KENDALI PERBANGAN.pptx
DASPRO - KENDALI PERBANGAN.pptx
 
Struktur kontrol perulangan
Struktur kontrol perulanganStruktur kontrol perulangan
Struktur kontrol perulangan
 
4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptx4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptx
 
Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)
 
Struktur Kontrol
Struktur KontrolStruktur Kontrol
Struktur Kontrol
 
Pertemuan iv
Pertemuan ivPertemuan iv
Pertemuan iv
 
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada JavaPBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
 
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul II
 

More from Rakhmat Dedi Gunawan

Modul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & DeploymentModul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & DeploymentRakhmat Dedi Gunawan
 
Modul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception HandlingModul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception HandlingRakhmat Dedi Gunawan
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Rakhmat Dedi Gunawan
 
Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)Rakhmat Dedi Gunawan
 
Modul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar KelasModul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar KelasRakhmat Dedi Gunawan
 
Modul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaModul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaRakhmat Dedi Gunawan
 
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Rakhmat Dedi Gunawan
 
Chapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek BaruChapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek BaruRakhmat Dedi Gunawan
 
Chapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiChapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiRakhmat Dedi Gunawan
 

More from Rakhmat Dedi Gunawan (20)

Modul PBO Bab-00 - Daftar Isi
Modul PBO Bab-00 - Daftar IsiModul PBO Bab-00 - Daftar Isi
Modul PBO Bab-00 - Daftar Isi
 
Modul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & DeploymentModul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & Deployment
 
Modul PBO Bab-11 - JDBC
Modul PBO Bab-11 - JDBCModul PBO Bab-11 - JDBC
Modul PBO Bab-11 - JDBC
 
Modul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception HandlingModul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception Handling
 
Modul PBO Bab-08 - Java GUI
Modul PBO Bab-08 - Java GUIModul PBO Bab-08 - Java GUI
Modul PBO Bab-08 - Java GUI
 
Modul PBO Bab-09 - Swing
Modul PBO Bab-09 - SwingModul PBO Bab-09 - Swing
Modul PBO Bab-09 - Swing
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
 
Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)
 
Modul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar KelasModul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar Kelas
 
Modul PBO Bab-03 - Kelas & Objek
Modul PBO Bab-03 - Kelas & ObjekModul PBO Bab-03 - Kelas & Objek
Modul PBO Bab-03 - Kelas & Objek
 
Modul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaModul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan Java
 
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
 
Chapter 01 - Pembuatan Database
Chapter 01 - Pembuatan DatabaseChapter 01 - Pembuatan Database
Chapter 01 - Pembuatan Database
 
Chapter 03 - Form Master
Chapter 03 - Form MasterChapter 03 - Form Master
Chapter 03 - Form Master
 
Chapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek BaruChapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek Baru
 
Chapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiChapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report Kwitansi
 
T04-Stored Procedure
T04-Stored ProcedureT04-Stored Procedure
T04-Stored Procedure
 
T05-Trigger
T05-TriggerT05-Trigger
T05-Trigger
 
T02-Join & View
T02-Join & ViewT02-Join & View
T02-Join & View
 
Teori pbd - erd_studi_kasus (1)
Teori pbd - erd_studi_kasus (1)Teori pbd - erd_studi_kasus (1)
Teori pbd - erd_studi_kasus (1)
 

Modul PBO Bab-02 - Struktur Kontrol

  • 1. Modul PBO – Teknokrat 12 STRUKTUR KONTROL Tujuan Praktikan dapat memahami, menjelaskan, dan menerapkan tentang struktur kontrol percabangan dan pengulangan. PERCABANGAN Suatu Struktur dasar algoritma yang memiliki satu atau lebih kondisi tertentu dimana sebuah instruksi dilaksanakan jika sebuah kondisi/persyaratan terpenuhi. Ada beberapa bentuk struktur dasar operator pemilihan ini, yaitu: · Pernyataan if · Pernyataan if-else · Pernyataan switch-case Pernyataan-pernyataan tersebut memerlukan suatu kondisi, sebagai basis dalam pengambilan keputusan. Kondisi umum yang dipakai berupa keadaan benar dan salah, operator yang bisa digunakan berupa operator relasi atau menggunakan operator logika. PERNYATAAN IF Pernyataan if akan menentukan sebuah pernyataan (atau blok kode) yang akan eksekusi jika dan hanya jika persyaratan bernilai benar (true). Bentuk dari pernyataan if, if( boolean_expression ) statement; atau if( boolean_expression ){ statement1; statement2; . . . } dimana, boolean_expression adalah sebuah penyataan logika (true/false) atau variabel bertipe boolean. Gambar 2.1 berikut merupakan diagram alur (flowchart) dari struktur pemilihan if. BAB 2
  • 2. Modul PBO – Teknokrat 13 Gambar 2. 1 Flowchart struktur pemilihan if Bentuk pernyataan ini dilaksanakan jika dan hanya jika kondisi yang diinginkan terpenuhi, jika tidak program tidak memberikan hasil apa-apa. Program 2-1 public class Percabangan { public static void main(String [] args) { // program untuk mencetak bilangan jika dibawah 10 int bil = 7; if(bil < 10) System.out.println("Angka " + bil + " kurang dari 10"); } } Hasil Output Angka 7 kurang dari 10 Penjelasan: Tampak bahwa jika nilai ‘bil’ lebih dari atau sama dengan 10, maka program tidak menghasilkan apa- apa. PERNYATAAN IF-ELSE Pernyataan if-else digunakan apabila kita ingin mengeksekusi beberapa pernyataan dengan kondisi true dan pernyataan yang lain dengan kondisi false. Bentuk pernyataan if-else, if( boolean_expression ) statement; else statement; dapat juga ditulis seperti, if( boolean_expression ){ statement1; statement2; . . . }else{
  • 3. Modul PBO – Teknokrat 14 statement1; statement2; . . . } Gambar 2.2 berikut merupakan diagram alur (flowchart) dari struktur pemilihan if-else. Gambar 2. 2 Flowchart struktur pemilihan if-else Arti dari pernyataan if-else: · Jika kondisi benar, maka if code dieksekusi. · Sedangkan bila kondisi bernilai salah, maka else code yang dieksekusi. Masing-masing if code dan else code dapat berupa sebuah pernyataan tunggal, pernyataan majemuk ataupun pernyataann kosong. Program 2-2 public class Percabangan { public static void main(String [] args) { int bil = 13; if(bil < 10) System.out.println("Angka " + bil + " kurang dari 10"); else System.out.println("Angka " + bil + " lebih dari 10"); } } Hasil Output Angka 13 lebih dari 10 Penjelasan: Tampak bahwa jika nilai yang diberikan lebih dari atau sama dengan 10, maka program akan memberi pesan “Angka … lebih dari 10”.
  • 4. Modul PBO – Teknokrat 15 PERNYATAAN IF-ELSE-IF Pernyataan pada bagian kondisi else dari blok if-else dapat menjadi struktur if-else yang lain. Kondisi struktur seperti ini mengijinkan kita untuk membuat seleksi persyaratan yang lebih kompleks. Bentuk pernyataan if-else if, if( boolean_expression1 ) statement1; else if( boolean_expression2 ) statement2; else statement3; Sebagai catatan: anda dapat memiliki banyak blok else-if sesudah pernyataan if. Blok else bersifat opsional dan dapat dihilangkan. Pada contoh yang ditampilkan di atas, jika boolean_expression1 bernilai true, maka program akan mengeksekusi statement1 dan melewati pernyataan yang lain. Jika boolean_expression2 bernilai true, maka program akan mengeksekusi statement2 dan melewati statement3. Program 2-3 public class Percabangan2 { public static void main(String [] args) { int na; // nilai akhir char hm; // huruf mutu na = 88; if(na > 85) { hm = 'A'; } else if(na > 75) { hm = 'B'; } else if(na > 65) { hm = 'C'; } else if(na > 55) { hm = 'D'; } else { hm = 'E'; } System.out.println("Huruf Mutu = " + hm); } } Hasil Output Huruf Mutu = A PERNYATAAN SWITCH-CASE Cara lain untuk membuat cabang adalah dengan menggunakan kata kunci switch. Switch mengkonstruksikan cabang untuk beberapa kondisi dari nilai. Bentuk pernyataan switch, switch( switch_expression ){ case case_selector1: statement1; // statement2; //block 1 . . . // break; case case_selector2: statement1; // statement2; //block 2 . . . // break;
  • 5. Modul PBO – Teknokrat 16 default: statement1; // statement2; //block n break; } Switch expression adalah ekspresi integer atau karakter dan case_selector1, case_selector2 dan seterusnya adalah konstanta unik dari nilai integer atau karakter. Ketika pernyataan switch ditemukan pada potongan kode program, compiler pertamakali akan memeriksa switch_expression, dan menuju ke case yang akan menyamakan nilai yang dimiliki oleh switch_expression. Selanjutnya program akan mengeksekusi pernyataan pada dari kode setelah case yang ditemukan sampai menemui pernyataan break, selanjutnya akan mengabaikan pernyataan yang lainnya hingga akhir dari struktur dari pernyataan switch. Jika tidak ditemui case yang cocok, maka program akan mengeksekusi blok default. Sebagai catatan, bahwa bagian blok default adalah opsional. Sebuah pernyataan switch bisa jadi tidak memiliki blok kode default. Gambar 2.3 berikut merupakan diagram alur (flowchart) dari struktur pemilihan switch-case. Gambar 2. 3 Flowchart struktur pemilihan switch-case Program 2-4 public class Percabangan3 { public static void main(String [] args) { int no_hari = 3; String nama_hari; switch(no_hari) { case 1: nama_hari = "Minggu"; break; case 2: nama_hari = "Senin"; break; case 3: nama_hari = "Selasa"; break; case 4: nama_hari = "Rabu"; break; case 5: nama_hari = "Kamis"; break;
  • 6. Modul PBO – Teknokrat 17 case 6: nama_hari = "Jum'at"; break; case 7: nama_hari = "Sabtu"; break; default: nama_hari = "Tidak terdaftar"; break; } System.out.println("Nama hari ke-" + no_hari + ": " + nama_hari); } } Hasil Output Nama hari ke-3: Selasa PENGULANGAN Suatu Struktur yang terdiri dari sebuah atau sekelompok instruksi yang diulang untuk jumlah tertentu. Baik yang terdefinisikan ataupun tidak. Struktur pengulangan terdiri atas dua bagian, yaitu kondisi pengulangan dan isi/badan pengulangan. Kondisi pengulangan berupa ekspresi boolean yang harus dipenuhi untuk melaksanakan pengulangan. Isi atau badan pengulangan berupa satu atau lebih pernyataan (aksi) yang akan diulang. PERNYATAAN FOR Pernyataan for digunakan untuk menghasilkan pengulangan (looping) beberapa kali tanpa penggunaan kondisi apapun. Pada umumnya looping yang dilakukan oleh for telah diketahui batas awal, syarat looping dan perubahannya. Selama kondisi terpenuhi, maka pernyataan akan terus dieksekusi. Diagram alir untuk pernyataan for dapat dilihat pada Gambar 2.4. Bentuk pernyataan for: for(inisialisasi; kondisi; iterasi){ pernyataan; } Gambar 2. 4 Flowchart pernyataan for
  • 7. Modul PBO – Teknokrat 18 Program 2-5 public class Pengulangan { public static void main(String [] args) { // Program untuk mencetak bilangan 1 - 15 for(int i=1; i<=15; i++) { System.out.print(i + " "); } } } Hasil Output 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Pada contoh yang melibatkan pernyataan for di atas (Program 2-5), kenaikan variabel pengendali loop berupa nilai positif. Sebenarnya kenaikan terhadap variabel pengendali loop bisa diatur bernilai negatif. Berikut adalah contoh programnya: Program 2-6 public class Pengulangan { public static void main(String [] args) { // Program untuk mencetak bilangan 15 - 1 for(int i=15; i>=1; i--) { System.out.print(i + " "); } } } Hasil Output 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 Pernyataan for dapat berada di dalam pernyataan for lainnya yang biasa disebut nested for. Berikut contoh programnya: Program 2-7 public class Pengulangan2 { public static void main(String [] args) { int tinggi = 4; System.out.println("Tinggi Segitiga: " + tinggi); for(int i=0; i<=tinggi; i++) { for(int j=0; j<i; j++) { System.out.print("*"); } System.out.println(); } } }
  • 8. Modul PBO – Teknokrat 19 Hasil Output Tinggi Segitiga: 4 * ** *** **** PERNYATAAN WHILE Pernyataan while merupakan salah satu pernyataan yang berguna untuk memproses suatu pernyataan atau beberapa pernyataan beberapa kali. Pada pernyataan ini pengecekan terhadap loop dilakukan di bagian awal (sebelum tubuh loop). Pernyataan while memungkinkan statemen- statemen yang ada didalamnya tidak diakukan sama sekali. Bentuk pernyataan while: while (kondisi){ pernyataan; } Berdasarkan Gambar 2.5, dapat dilihat bahwa ada kemungkinan statement tidak dijalankan sama sekali, yaitu apabila hasil pengujian condition yang pertama kali bernilai false. Gambar 2. 5 Flowchart pernyataan while Program 2-8 public class Pengulangan3 { public static void main(String [] args) { int bil = 10; while(bil <= 20) { System.out.print(bil + " "); bil += 2; } } } Hasil Output 10 12 14 16 18 20 Lembar Kerja Praktikum: Modul 2
  • 9. Modul PBO – Teknokrat 20 NPM: Asisten: Nama: Nilai: Kelas: Tanggal: Soal 1. [Score: 35] Buatlah program untuk mencetak segitiga seperti berikut (gunakan perulangan while atau for): Hasil Output **** *** ** * 2. [Score: 30] Buatlah program untuk menentukan apakah bilangan yang dimasukan genap atau ganjil: Hasil Output Masukan angka: 33 33 adalah bilangan ganjil 3. [Score: 35] Buatlah program untuk menentukan nilai tertinggi, terendah, dan rata-rata untuk lima bilangan yang dimasukan: Hasil Output Bilangan 1: 33 Bilangan 2: 25 Bilangan 3: 17 Bilangan 4: 44 Bilangan 5: 10 Min: 17 Max: 44 Rata: 25.8