Aliran Kendali Pengulangan Struktur pengulangan dimaksudkan untuk melakukan proses pengulangan dari beberapa instruksi dalam sejumlah pengulangan tertentu Tiga macam struktur pengulangan dalam pemrograman terstruktur, yaitu: Struktur for Struktur while Struktur do-while Aliran Kendali Pengulangan
Aliran Kendali Pengulangan Pengulangan for Konstruksi for for (exp1; exp2; exp3) statement; atau for (exp1; exp2; exp3){ statement1; statement2; … } exp1 : initialisation of control variable(s) exp2 : condition exp3 : increment or decrement of control variable(s) keberadaan exp1, exp2, dan exp3 bersifat optional Aliran Kendali Pengulangan
Struktur pengulangan for Struktur logika pengulangan for exp1 exp3 statements exp2 true false exp1 exp3 statements exp2 false Aliran Kendali Pengulangan
Struktur Pengulangan for Contoh : for (x=1; x <= 10; x++) System.out.println(x); x = 1 x++ Cetak x true x<=100 false Aliran Kendali Pengulangan
Struktur Pengulangan for Contoh : Program mencetak angka dari 1 sampai 10 Program mencetak angka dari 10 sampai 1 public static void main(String[] args) { int x; for(x=1; x<=10; x++) System.out.println( x ); } public static void main(String[] args) { int x; for(x=10; x>=1; x--) System.out.println( x ); } Aliran Kendali Pengulangan
Struktur Pengulangan for exp1 dan exp3 boleh terdiri dari beberapa ekspresi yang dipisahkan dengan koma. Contoh: public static void main(String[] args) { int i,j; for(i=1, j=30; i<j; i++, j--){ System.out.println(“i=“+i+” j=“+j); } Aliran Kendali Pengulangan
Struktur Pengulangan for Contoh penggunaan for untuk menghitung rata-rata pengeluaran uang bensin selama satu bulan, dengan data sbb : Minggu Pengeluaran 1 Rp. 32.000,- 2 Rp. 29.000,- 3 Rp. 33.000,- 4 Rp. 24.000,- Algoritma : 1. Variabel jumlah diberi nilai nol 2. Baca data pengeluaran bensin dari keyboard dan simpan ke variabel data 3. Tambahkan data ke jumlah 4. Ulangi 2 dan 3 sebanyak 4 kali 5. Rerata = Jumlah / 4 Aliran Kendali Pengulangan
Struktur Pengulangan for Infinite Loop Infinite loop dapat diimplentasikan dengan menghilangkan ketiga parameter (exp1, exp2, exp3) pada for statement. break statement membuat keluar dari loop. Contoh: public static void main(String[] args) { int i = 0; for(;;){ i++; System.out.println(i); if (i>=10) break; } Aliran Kendali Pengulangan
Struktur Pengulangan for Nested Loop Pengulangan dalam pernyataan pengulangan. int x, y; for (x=1;x<=5;x++) for (y=5; y>=1; y--) System.out.println(“x:”+x+” y:”+y) Aliran Kendali Pengulangan
Struktur Pengulangan while Sintaks : while (boolean exp) statement; atau while(boolean exp){ statement1; statement2; .. } statements true Boolean exp false Aliran Kendali Pengulangan
Struktur Pengulangan while Contoh : while(product <= 1000) product = 2*product; product=2*product; product <= 1000 true false Aliran Kendali Pengulangan
Struktur Pengulangan while Contoh program: public static void main(String[] args) { int n,i,f; n=5; i = n; f = n; while (i>1){ i--; f=f*i; } System.out.println(f); Aliran Kendali Pengulangan
Struktur Pengulangan while Kesetaraan for dengan while sbb: Contoh: exp1; while(exp2){ statement1; statement2; …. exp3 } for(exp1; exp2; exp3){ statement1; statement2; …. } setara public static void main(String[] args) { int x=1; while(x<=10){ System.out.println(x); x++; } public static void main(String[] args) { int x; for(x=1;x<=10;x++) System.out.println(x); } serupa Aliran Kendali Pengulangan
Struktur Pengulangan do-while Sintaks : do statement while (boolean exp); atau do{ statement1; statement2; .. } while(boolean exp) Selama boolean exp bernilai true maka statements dieksekusi. Pengetesan boolean exp dilakukan setelah mengeksekusi statements. eks. boolean true false statements Aliran Kendali Pengulangan
Struktur Pengulangan do-while Contoh: int i = 0; do{ System.out.println(i); } while(++i <=10); ++i <= 10 true false i = 0 Cetak i Aliran Kendali Pengulangan
Aliran Kendali Pengulangan Catatan Pada pengulangan while, statement atau block statement mungkin tidak akan pernah dilaksanakan bila nilai ekspresi boolen false, karena operasi pengulangan diawali dengan mengeksekusi ekspresi boolean. Pada pengulangan do-while statement atau block statement pasti dikerjakan minimal satu kali, karena ekspresi boolean baru diuji pada akhir blok pengulangan. Aliran Kendali Pengulangan
Aliran Kendali Pengulangan break dan continue break keluar dari pengulangan (for, while dan do-while) atau seleksi (switch) continue tinggalkan sisa instruksi dalam sebuah pengulangan dan masuki tahap pengulangan selanjutnya Aliran Kendali Pengulangan
Aliran Kendali Pengulangan break Contoh penggunaan break pada pengulangan: public static void main(String[] args){ int x = 1; while(x<=10){ System.out.println(x); x++; if (x>5) break; } keluar dari loop Aliran Kendali Pengulangan
Aliran Kendali Pengulangan continue Contoh: public static void main(String[] args){ { int x; for(x=1; x<=10; x++) { if (x == 5) continue; System.out.println(x); } Aliran Kendali Pengulangan
Aliran Kendali Pengulangan break vs continue do { x = input.nextFloat(); if(x<0) { System.out.println(”\nError. Negative”); continue; } /*Proses nonnegatif*/ … } while(exp); do { x = input.nextFloat(); if(x<0) { System.out.println(”\nError. Negative”); break; } /*Proses nonnegatif */ … } while(exp); Aliran Kendali Pengulangan
Aliran Kendali Pengulangan Tugas 1 Buat program untuk menampilkan bilangan ganjil dari 11 sampai 188, dengan menggunakan : for, while, dan do - while Diasumsikan hari 1 menyatakan senin, 2 - selasa, 3 - rabu,…, 7 – minggu. Buatlah sebuah program untuk menampilkan angka hari sebanyak n yang diinput dari keyboard. Perhatikan pola berikut : n = 3 2 3 n = 7 2 3 4 5 6 7 n = 10 1 2 3 4 5 6 7 1 2 3 Aliran Kendali Pengulangan
Aliran Kendali Pengulangan Tugas 2 Buatlah program untuk menampilkan gambar seperti di bawah ini, dengan n variabel integer yang nilainya didapat dari keyboard input. Gunakan for, while atau do-while. * * * * * * * * * * * * * * * n n Aliran Kendali Pengulangan