Struktur Dasar Java
Percabangan & Perulangan
Object-oriented Programming (OOP) with JAVA 2011/2012
Macam-macam Percabangan • • • •
if (...) if (…) else (…) if (…) else if (…) else (…) switch (…)
Percabangan : if • Formula : if (ekspresi_boolean) statement Atau
Logical expression
Y N Statements
if (ekspresi_boolean) { statements }
…..
Latihan • Buatlah program yang akan membaca sebuah angka integer. Jika angka di atas 75 tuliskan “Lulus”. • Algoritma : 1. deklarasikan variabel bernama nilai 2. Inisialisasi variabel nilai dengan sembarang angka 3. jika nilai > 75 tulis (“Lulus”)
Gunakan perintah System.out.print(); untuk mencetak teks kelayar.
Latihan • Buatlah program yang akan menerima input sebuah huruf. Jika huruf adalah ‘Y’ atau ‘y’ tuliskan “Proses diteruskan” • Algoritma : 1. deklarasikan variabel char bernama huruf 2. Inisilisasi variabel huruf dengan sembarang huruf 3. jika huruf==‘Y’ atau huruf==‘y’ tulis (“Proses diteruskan”)
Percabangan : if-else • Formula : if (ekspresi_boolean) statement 1 else statement 2
atau if (ekspresi_boolean) { statements 1 } else { statements 2 }
Logical expression
N Statements-2
Y Statements-1
…..
Latihan • Buatlah program yang akan menerima input berupa nilai integer. Jika angka merupakan kelipatan 5 tuliskan “Kelipatan 5”, jika tidak tuliskan “Bukan kelipatan 5”. • Algoritma : 1. deklarasikan variabel bernama angka (int) 2. Inisialisasi variabel angka dengan sembarang nilai 3. jika angka%5==0 tulis (“Kelipatan 5”) else tulis (“Bukan kelipatan 5”)
Latihan • Buatlah program yang akan menerima data berupa angka integer. Jika 5
5 dan nilai<50 tulis (“Memenuhi”) else tulis (“Tidak memenuhi”)
Percabangan : if-else if-else • Formula : if( ekspresi_boolean1 ) statement1; else if(ekspresi_boolean2) statement2; else statement3; if(ekspresi_boolean1 ) { statement1; } else if(ekspresi_boolean2 ) { statement2; } else { statement3; }
Latihan • Buatlah program yang memiliki satu buah variabel bernama angka (int). Tuliskan output sesuai ketentuan : Angka
Output
angka<50
“Kurang”
50<=angka<70
“Cukup”
Angka>=70
“Baik”
Percabangan : switch • Formula : switch( switch_ekspresi ){ case case_pilihan1: statement1;// statement2;//blok 1 break; case case_pilihan2: statement1;// statement2;//blok 2 break; : default: statement1;// statement2;//blok n }
Latihan • Selesaikan soal sebelumnya dengan switch.
Ekspresi Kondisional • Gunakan : ? (ternary operator) • Tujuan : menggantikan if else • Pola : ekspresi-1 ? ekspresi-2 : ekspresi-3 • Program akan mengevaluasi ekspresi-1 : – Jika nilai=1 maka ekspresi-2 dieksekusi – Jika nilai=0 maka ekspresi-3 dieksekusi
Konsep Perulangan • Sebuah proses di dalam program yang akan mengulang satu atau beberapa statement terus-menerus hingga sampai pada kondisi berhenti.
Bentuk Perulangan di Java
for while do-while
Pengulangan : for • Umumnya digunakan pada pengulangan yang jumlah iterasinya sudah pasti atau sudah diketahui sebelumnya. • Formula : for (inisialisasi; kondisi; iterasi) { //statement yang akan diulang }
Alur Kerja for Start
inisialisasi
false kondisi true Statement yang diulang
iterasi
End
Contoh-contoh “for” 1. Program untuk menuliskan teks “Java Programming” sebanyak 10 kali. class DemoFor1 { public static void main (String[] args) { for (int i=0; i<10; i++) { System.out.println("Java"); } } } class DemoFor1 { public static void main (String[] args) { for (int i=10; i>0; i--) { System.out.println("Java"); } } }
Contoh 2. Program untuk menjumlahkan 5 bil. positif pertama class DemoFor3 { public static void main(String[] args) { int n = 5; // 5 bilangan positif pertama int hasil = 0; for (int i=1; i<=n; i++) { hasil = hasil + i; if (i != n) { System.out.print(i + " + "); } else { System.out.print("= "); } } System.out.println(hasil); } }
3. Program untuk menentukan apakah sebuah integer termasuk prima atau tidak. class DemoFor4 { public static void main(String[] args) { int bilangan = 7; int prima = 1; for (int i=2; i <= (bilangan/2); i++) { if ((bilangan % i) == 0) { prima = 0; break; // menghentikan pengulangan } } if (prima==1) { System.out.println(bilangan + " merupakan bilangan prima"); } else { System.out.println(bilangan + " bukan bilangan prima"); } } }
Penggunaan koma dalam “for” • Perhatikan program berikut : class DemoFor5 { public static void main(String[] args) { int j=4; for (int i=0; i < 5; i++) { System.out.println("Nilai i: " + i); System.out.println("Nilai j: " + j); System.out.println(); j--; } } }
• Dapat disederhanakan sbb : class DemoFor6 { public static void main(String[] args) { int i,j; for (i=0, j=4; i < 5; i++, j--) { System.out.println("Nilai i: " + i); System.out.println("Nilai j: " + j); System.out.println(); } } }
Percabangan : while • Formula : inisialisasi; while(kondisi) { //statement yang akan diulang iterasi; Ekspresi? }
Salah
Statement …….
Ke pernyataan sesudah while
Perulangan : do-while • Formula : inisialisasi; do{ //statement yang akan diulang iterasi; }while(kondisi);
Statement …….
Benar
Ekspresi? Salah
Ke pernyataan sesudah while
Latihan • Ubahlah contoh perulangan dengan for pada slide sebelumnya dengan menggunakan mekanisme while dan do-while.
(1) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 2 3 4 5
(2) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 2 3 4 5
Tambahkan literal \n untuk menurunkan teks 1 baris.
(3) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 12345 12345 12345 12345 12345
(4) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 11111 22222 33333 44444 55555
(5) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 22 333 4444 55555
(6) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 55555 4444 333 22 1
(7) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 55555 4444 333 22 1 1 22 333 4444 55555
(8) Latihan Tuliskan program untuk mendapatkan output seperti berikut : 1 22 333 4444 55555 55555 4444 333 22 1