Perulangan ( Iteration )

28
Perulangan ( Perulangan ( Iteration Iteration ) )

description

Perulangan ( Iteration ). Tujuan. Di akhir pertemuan , mahasiswa diharapkan : Memahami konsep perulangan pada pemrograman Mengenal sintaks perulangan di Java Mampu menerapkan perulangan dalam persoalan. Konsep Perulangan. - PowerPoint PPT Presentation

Transcript of Perulangan ( Iteration )

Page 1: Perulangan  ( Iteration )

Perulangan (Perulangan (IterationIteration))

Page 2: Perulangan  ( Iteration )

2

TujuanTujuan

Di akhir pertemuan, mahasiswa diharapkan : Di akhir pertemuan, mahasiswa diharapkan :

1.1. Memahami konsep perulangan pada Memahami konsep perulangan pada pemrogramanpemrograman

2.2. Mengenal sintaks perulangan di JavaMengenal sintaks perulangan di Java

3.3. Mampu menerapkan perulangan dalam Mampu menerapkan perulangan dalam persoalanpersoalan

Page 3: Perulangan  ( Iteration )

3

Konsep PerulanganKonsep Perulangan Sebuah proses di dalam program yang akan Sebuah proses di dalam program yang akan

mengulang satu atau beberapa statement mengulang satu atau beberapa statement terus-menerus hingga sampai pada kondisi terus-menerus hingga sampai pada kondisi berhenti.berhenti.

Page 4: Perulangan  ( Iteration )

4

Bentuk Perulangan di JavaBentuk Perulangan di Java

Page 5: Perulangan  ( Iteration )

5

Pengulangan : forPengulangan : for Umumnya digunakan pada pengulangan yang Umumnya digunakan pada pengulangan yang

jumlah iterasinya sudah pasti atau sudah jumlah iterasinya sudah pasti atau sudah diketahui sebelumnya.diketahui sebelumnya.

Formula :Formula :

for (inisialisasi; kondisi; iterasi) {for (inisialisasi; kondisi; iterasi) {

//statement yang akan diulang//statement yang akan diulang

}}

Page 6: Perulangan  ( Iteration )

6

Alur Kerja forAlur Kerja for

inisialisasi

kondisi

Statement yang diulang

iterasi

Start

End

true

false

Page 7: Perulangan  ( Iteration )

7

Contoh-contoh “for”Contoh-contoh “for”

1.1. Program untuk menuliskan teks “Java Program untuk menuliskan teks “Java Programming” sebanyak 10 kali.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"); } }}

Page 8: Perulangan  ( Iteration )

8

2.2. Program untuk menjumlahkan 5 bil. positif Program untuk menjumlahkan 5 bil. positif pertamapertamaclass 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); }}

Page 9: Perulangan  ( Iteration )

9

3.3. Program untuk menentukan apakah sebuah Program untuk menentukan apakah sebuah integer termasuk prima atau tidak.integer termasuk prima atau tidak.

class DemoFor4 { public static void main(String[] args) { int bilangan = 7; boolean prima = true;

for (int i=2; i <= (bilangan/2); i++) { if ((bilangan % i) == 0) { prima = false; break; // menghentikan pengulangan } } if (prima) { System.out.println(bilangan + " merupakan bilangan prima"); } else { System.out.println(bilangan + " bukan bilangan prima"); } }}

Page 10: Perulangan  ( Iteration )

10

Penggunaan koma dalam “for”Penggunaan koma dalam “for” Perhatikan program berikut :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--; } }}

Page 11: Perulangan  ( Iteration )

11

Dapat disederhanakan sbb :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(); } }}

Page 12: Perulangan  ( Iteration )

12

Variasi “for”Variasi “for” For dengan kondisi berhenti sebuah variabel For dengan kondisi berhenti sebuah variabel

booleanbooleanimport java.util.Scanner;public class ForBoolean { public static void main(String[] args) {

Scanner input = new Scanner(System.in);int angka, i;boolean stop=false;

for (i=0; !stop; i++){ System.out.print("Masukkan angka : "); angka = input.nextInt(); System.out.print(angka+” “); if (angka == 0) stop = true;}System.out.println("Selesai.");

}}

Page 13: Perulangan  ( Iteration )

13

Variasi program sebelumnya :Variasi program sebelumnya :import java.util.Scanner;

public class ForBoolean { public static void main(String[] args) {

Scanner input = new Scanner(System.in);int angka, i;boolean stop=false;i = 0;for (; !stop; ){ System.out.print("Masukkan angka : "); angka = input.nextInt(); if (angka == 0) stop = true; i++;}System.out.println("Selesai.");

}}

Page 14: Perulangan  ( Iteration )

14

Tiga mahasiswa IT nonton bareng sebelum ujian akhir. Tiga mahasiswa IT nonton bareng sebelum ujian akhir. Besoknya mereka nggak siap untuk ikut ujian. Mereka Besoknya mereka nggak siap untuk ikut ujian. Mereka memutuskan untuk tidak datang dan sepakat memutuskan untuk tidak datang dan sepakat mengarang cerita, lalu belajar selama seminggu. mengarang cerita, lalu belajar selama seminggu. Seminggu kemudian mereka bertiga menghadap Seminggu kemudian mereka bertiga menghadap profesor. Mereka cerita bahwa mereka pergi ke profesor. Mereka cerita bahwa mereka pergi ke pedalaman Kalimantan, naik jip, terus ban mereka pedalaman Kalimantan, naik jip, terus ban mereka meledak, sementara ban cadangan gembos. Makan meledak, sementara ban cadangan gembos. Makan waktu 3 hari untuk jalan ke Pontianak, terus pulang naik waktu 3 hari untuk jalan ke Pontianak, terus pulang naik pesawat ke Jakarta.pesawat ke Jakarta.

Kata profesor, “Ya sudah, kalau ban kalian meledak itu Kata profesor, “Ya sudah, kalau ban kalian meledak itu bukan salah kalian kan, ayo sekarang ikut saya ”bukan salah kalian kan, ayo sekarang ikut saya ”

Mereka diberi 2 soal. Mereka dipisah, disuruh masuk ke Mereka diberi 2 soal. Mereka dipisah, disuruh masuk ke kelas yang berbeda-beda, lalu mulailah ujian …kelas yang berbeda-beda, lalu mulailah ujian …

Soal pertama [poin 5] Apakah kepanjangan RAM? Soal pertama [poin 5] Apakah kepanjangan RAM? Mereka bertiga mikir, wah gampang banget …”Random Mereka bertiga mikir, wah gampang banget …”Random Access Memory”Access Memory”

Soal kedua [point 95] Ban mana yang kempes?Soal kedua [point 95] Ban mana yang kempes?

Waduuuuhhhh ……Waduuuuhhhh ……

Page 15: Perulangan  ( Iteration )

15

Percabangan : whilePercabangan : while Formula :Formula :

inisialisasiwhile (kondisi) { //statement yang diulang iterasi}

Page 16: Perulangan  ( Iteration )

16

Contoh-contoh “while”Contoh-contoh “while”

import java.util.Scanner;

public class DemoWhile1 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int bil, jumlah=0;

while (jumlah<=100){ System.out.print("Masukkan angka : "); bil = input.nextInt(); jumlah = jumlah+bil; } System.out.println("Selesai. Total masukan user = "+jumlah); }}

Program yang akan menjumlahkan secara berulang integer masukan

user dan berhenti ketika jumlahnya sudah >100

Page 17: Perulangan  ( Iteration )

17

Program miniATM

Page 18: Perulangan  ( Iteration )

18

Perulangan “do-while”Perulangan “do-while” Formula Formula

inisialisasido {//statement yang akan diulang…iterasi} while (kondisi);

Page 19: Perulangan  ( Iteration )

19

ContohContoh

class ContohDoWhile {class ContohDoWhile {

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

int i = 6;int i = 6;

do {do {

System.out.println(“Java”);System.out.println(“Java”);

i++;i++;

} while (i<5);} while (i<5);

}}

}}

Page 20: Perulangan  ( Iteration )

20

Perulangan Bersarang (1)Perulangan Bersarang (1) ““for bersarang”for bersarang”

public class NestedFor { public static void main(String[] args) { int i,j;

for (i=1;i<=5;i++){ for (j=1;j<=i;j++){ System.out.print(i+" "); } System.out.println(); } }}

Page 21: Perulangan  ( Iteration )

21

Perulangan Bersarang (2)Perulangan Bersarang (2) ““while bersarang”while bersarang”

public class NestedWhile { public static void main(String[] args) { int i=1,j=1;

while (i<=5){ while (j<=i){ System.out.print(i+" ");

j++; } System.out.println(); i++; } }}

Page 22: Perulangan  ( Iteration )

22

Perulangan Bersarang (3)Perulangan Bersarang (3) ““do-while bersarang”do-while bersarang”

public class NestedDoWhile { public static void main(String[] args) { int i=1,j=1;

do { do { System.out.print(i+" ");

j++; } while (j<=i); System.out.println(); i++; } while (i<=5); }}

Page 23: Perulangan  ( Iteration )

23

Pretest (10 Menit)Pretest (10 Menit)

1.1. Perbaiki kode berikut :Perbaiki kode berikut :

forfor ( i = 100, i >= 1, i++ ) ( i = 100, i >= 1, i++ )

System.out.println( i );System.out.println( i );

2.2. Kode berikut harusnya menampilkan integer Kode berikut harusnya menampilkan integer ganjil dari 19 s/d 1 :ganjil dari 19 s/d 1 :

forfor ( i = 19; i >= 1; i += 2 ) ( i = 19; i >= 1; i += 2 )

System.out.println( i ); System.out.println( i );

Page 24: Perulangan  ( Iteration )

24

3.3. Kode berikut harusnya menampilkan integer Kode berikut harusnya menampilkan integer genap dari 2 s/d 50 :genap dari 2 s/d 50 :

counter = 2; counter = 2;

dodo { {

System.out.println( counter ); System.out.println( counter );

counter += 2 ; counter += 2 ;

} } whilewhile ( counter < 50 ); ( counter < 50 );

Page 25: Perulangan  ( Iteration )

25

d)d) Apakah output program berikut :Apakah output program berikut :

publicpublic classclass Printing { Printing {

public static voidpublic static void main(String main(String args[]){ args[]){

forfor ( int i = 1; i <= 3; i++ ) { ( int i = 1; i <= 3; i++ ) {

forfor ( int j = 1; j <= 3; j++ ) ( int j = 1; j <= 3; j++ ) System.out.print( '@' System.out.print( '@'

); );

System.out.println();System.out.println();

} } // end outer for // end outer for

} } // end main // end main

} } // end class Printing// end class Printing

Page 26: Perulangan  ( Iteration )

26

LatihanLatihan

1.1. Buat program perulangan yang outputnya :Buat program perulangan yang outputnya :a.a. 1 3 5 7 9 … 991 3 5 7 9 … 99b.b. 100 99 98 97 … 1100 99 98 97 … 1c.c. 5 10 15 20 … 1005 10 15 20 … 100d.d. 2 4 8 16 32 … 2562 4 8 16 32 … 256

2.2. Modifikasilah contoh program di slide 8 Modifikasilah contoh program di slide 8 sehingga banyaknya integer yang sehingga banyaknya integer yang dimasukkan tergantung masukan user. dimasukkan tergantung masukan user. Program akan terus menerus mengulang Program akan terus menerus mengulang hingga user memasukkan huruf ‘t’ pada hingga user memasukkan huruf ‘t’ pada pertanyaan “Ingin mengulang lagi (y/t) ?”pertanyaan “Ingin mengulang lagi (y/t) ?”

Page 27: Perulangan  ( Iteration )

27

3.3. Modifikasilah program di slide 14 sehingga Modifikasilah program di slide 14 sehingga outputnya :outputnya :

1 1 1 1 11 1 1 1 1

2 2 2 22 2 2 2

3 3 33 3 3

4 44 4

55

Page 28: Perulangan  ( Iteration )

28

PRPR

1.1. Buatlah sebuah array yang akan menyimpan Buatlah sebuah array yang akan menyimpan 10 nilai integer inputan dari user. Gunakan 10 nilai integer inputan dari user. Gunakan perulangan untuk itu. Selanjutnya tampilkan perulangan untuk itu. Selanjutnya tampilkan kesepuluh isi array dalam urutan terbalik kesepuluh isi array dalam urutan terbalik (mulai indeks terakhir s/d pertama)(mulai indeks terakhir s/d pertama)

2.2. Buatlah sebuah array yang akan menyimpan Buatlah sebuah array yang akan menyimpan 5 nilai integer inputan dari user. User dapat 5 nilai integer inputan dari user. User dapat memasukkan sembarang integer tetapi memasukkan sembarang integer tetapi hanya integer genap yang akan disimpan ke hanya integer genap yang akan disimpan ke dalam array. Perulangan berhenti ketika dalam array. Perulangan berhenti ketika array sudah penuh (berisi 5 elemen). array sudah penuh (berisi 5 elemen). Terakhir, tampilkan seluruh isi array ke layar.Terakhir, tampilkan seluruh isi array ke layar.