Top Banner
D4 LJ PJJ PENS-ITS Pemrograman Berbasis Obyek 1 Percabangan dan Perulangan Yuliana Setiowati Politeknik Elektronika Negeri Surabaya 2007
57

Percabangan dan Perulangan

Jan 13, 2017

Download

Documents

lekien
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

1

Percabangan dan Perulangan

Yuliana SetiowatiPoliteknik Elektronika Negeri Surabaya

2007

Page 2: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

2

Topik• Percabangan• switch• Perulangan• Special Loop Control

Page 3: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

3

Flowchart• Bagan-bagan yang mempunyai arus yang

menggambarkan langkah-langkahpenyelesaian suatu masalah.

• Merupakan cara penyajian dari suatualgoritma.

Page 4: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

4

Simbol-Simbol Flowchart

Page 5: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

5

Simbol-Simbol Flowchart

Page 6: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

6

Pembuatan Flowchart• Tidak ada kaidah yang baku.• Flowchart adalah gambaran hasil analisa suatu

masalah• Flowchart dapat bervariasi antara satu pemrogram

dengan pemrogram lainnya.• Secara garis besar ada 3 bagian utama:

– Input– Proses– Output

Page 7: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

7

Pembuatan Flowchart• Hindari pengulangan proses yang tidak

perlu dan logika yang berbelit sehinggajalannya proses menjadi singkat.

• Jalannya proses digambarkan dari atas kebawah dan diberikan tanda panah untukmemperjelas.

• Sebuah flowchart diawali dari satu titikSTART dan diakhiri dengan END.

Page 8: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

8

Pembuatan Flowchart

Page 9: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

9

Percabangan

• if• if-else• else-if• switch

Page 10: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

10

if

if (ekspresi boolean) {pernyataan1;

}pernyataan2;

ifekspresi = true

pernyataan1

pernyataan2

Y

N

Page 11: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

11

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

int bilangan=-1;if (bilangan<0)

System.out.println(“Bilangan adalah negatif”); }

}

• OutputBilangan adalah negatif

if(bilangan<0)

Y

N

Start

End

Cetak negatif

Bilangan= -1

Page 12: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

12

• Output8 adalah Bilangan Genap

if(input%2==0)

Y

N

Start

End

input=8

Cetak genap

Page 13: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

13

if-else

if (ekspresi boolean) {pernyataan1;

} else {pernyataan2;

} pernyataan3;

ifekspresi = true

pernyataan2

pernyataan3

Y N

pernyataan1

Page 14: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

14

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

int bilangan=-1;if (bilangan<0)

System.out.println(“Bilangan adalah negatif”); else

System.out.println(“Bilangan adalah positif”); }

}

• OutputBilangan adalah negatif

Contoh Program

Page 15: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

15

if(bilangan<0)

Y

N

Start

End

Bilangan= -1

Cetak negatif

Cetak positif

Page 16: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

16

Contoh Program

• Output :9 adalah Bilangan Ganjil

Page 17: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

17

if(input%2==0)

Y

N

Start

End

Input = 9

Cetak ganjil

Cetak genap

Page 18: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

18

Contoh Program• User memasukkan inputan dengan menggunakan keyboard

• import java.util.Scanner;• public class if32 {• public static void main(String args[]){• Scanner scan = new Scanner(System.in);• System.out.print("Masukkan Bilangan = ");• int input = scan.nextInt();• if (input %2 == 0)• System.out.println(input + " adalah Bilangan Genap");• else• System.out.println(input + " adalah Bilangan Ganjil");• }• }

Output :Masukkan Bilangan = 33 adalah Bilangan Ganjil

Page 19: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

19

Output ?

• public class if2{• public static void main(String args[]){• int input = 9 ;• if (input %2 == 0)• System.out.println(input + " adalah Bilangan Genap");• else• System.out.println(input + " adalah Bilangan Ganjil");• System.out.println("Selalu dijalankan");• }• }

Page 20: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

20

If - else

• if (ekspresi boolean) bukan numerik

• Contoh :if (x) // x integer

gunakan if (x!=0)

Page 21: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

21

Contoh program• import java.util.Scanner;

• public class ifTebakAngka {• public static void main(String args[]){• Scanner scan = new Scanner(System.in);• System.out.print("Masukkan Bilangan = ");• int angka = scan.nextInt();• if (angka != 15)• System.out.println("Tebakan Anda Salah");• else• System.out.println("Tebakan Anda Benar");• }• }

Output:Masukkan Bilangan = 1Tebakan Anda Salah

Output:Masukkan Bilangan = 15Tebakan Anda Benar

Page 22: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

22

else-if

ifekspresi2 = true

pernyataan3

pernyataan4

Y N

pernyataan2

ifekspresi1 = true

N

pernyataan1

Y

if (ekspresi1 boolean) {pernyataan1;

} else if (ekspresi2 boolean) {pernyataan2;

} else {pernyataan3;

}pernyataan4;

Page 23: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

23

Contoh Program• import java.util.Scanner;• public class if42 {• public static void main(String args[]){• Scanner scan = new Scanner(System.in);• System.out.print("Masukkan Bilangan = ");• int input = scan.nextInt() ;

• if (input %2 == 0)• System.out.println(input + " adalah kelipatan 2");• else if (input %3 == 0)• System.out.println(input + " adalah kelipatan 3");• else if (input %5 == 0)• System.out.println(input + " adalah kelipatan 5");• else• System.out.println(input + " adalah kelipatan lainnya");• }• }

Masukkan Bilangan =88 adalah kelipatan 2

Masukkan Bilangan =99 adalah kelipatan 3

Masukkan Bilangan =1010 adalah kelipatan 5

Page 24: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

24

if(input%3==0)

N Y

If(input%2==0)

N

Y

if(input%5==0)

Y N

Kelipatan 2

Kelipatan 3

Kelipatan 5

Kelipatan lainnya

Page 25: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

25

switchswitch (ekspresi) {

case konstan1 :pernyataan1;break;

case konstan2:pernyataan2;break;

default :pernyataan3;

}pernyataan4;

ifekspresi = konstan2

pernyataan3

pernyataan4

Y N

pernyataan2

ifekspresi = konstan1

N

pernyataan1

Y

ifbreak

ifbreak

Y

N

Y

N

Page 26: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

26

switch

• Variabel x harus bertipe byte, short, char, atau int.• Floating point, long, atau class references (termasuk

String) tidak diperbolehkan.• Kedudukan statement pada default sama dengan

kedudukan else pada if-else.

Page 27: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

27

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

int i = 2;switch (i) {

case 1 : i+=3;break;

case 2 : i+=5;break;

default: i+=10;}System.out.println(i);

}}

Output

7

Page 28: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

28

if(i==2)

i+=10

Cetak i

Y N

i+=5

if(i==1)N

i+=3Y

ifbreak

ifbreak

Y

N

Y

N

i=2

Start

End

Page 29: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

29

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

int i = 1;switch (i) {

case 1 : i+=3;case 2 : i+=5;default: i+=10;

}System.out.println(i);

}}

Output

19

Page 30: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

30

Perulangan

• for• while• do-while• nested loop• continue • break

Page 31: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

31

forfor (inisialisasi; kondisi; perubah) {

pernyataan;} if

kondisi = true

pernyataan

perubah

Y

N

for (inisialisasi; kondisi; perubah)

pernyataan

Inisialisasi

start

end

Page 32: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

32

for (int i=0; i<10; i++) {System.out.println(“Hore !!”);

}

Contoh Program

OutputHore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!

if(i<10)

i++

Y

N

Start

End

Cetak Hore

i=0

Page 33: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

33

OutputHore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!Hore !!Finally

if(i<10)

i++

Y

N

Start

End

i=0

Cetak Hore

Cetak Finally

Page 34: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

34

for

• Di Java diperbolehkan menggunakan tandakoma untuk pemisah di for

• Contoh:for (i=0, j = 0; j<10; i++, j++){}

Page 35: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

35

Contoh Program

Outputi = 0 j = 1i = 1 j = 2i = 2 j = 3i = 3 j = 4i = 4 j = 5Finally

if(i<5)

i++ j++

Y

N

Start

End

i=0 j=1

Cetak Finally

Cetak i dan j

Page 36: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

36

whilewhile (kondisi) {

pernyataan 1;}pernyataan 2

ifkondisi = true

Pernyataan 1

Y

N

Pernyataan 2

while (kondisi)

Pernyataan 1

Pernyataan 2

Page 37: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

37

Contoh Program

• Menampilkan bilangan ganjil yang lebih kecil dari 20

Output1 3 5 7 9 11 13 15 17 19

Page 38: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

38

if(awal<20)

Y

N

awal++

if(awal%2 != 0)

Y

N

Start

End

awal = 0

Cetak awal

Page 39: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

39

do-while

do {pernyataan;

} while (kondisi);

ifkondisi = true

pernyataan

Y

N

while (kondisi)

pernyataan

Page 40: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

40

Contoh Program

• Menampilkan bilangan ganjil yang lebih kecil dari 20

Output1 3 5 7 9 11 13 15 17 19

Page 41: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

41

if(awal<20)

Cetak awalY

N

awal++

awal=0

if(awal%2 != 0)

Y

N

Start

End

Page 42: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

42

Nested loop

• Dalam suatu loop bisa terkandung loop yang lain, sehingga jika loop tersebut diulangi n kali dan loop yang didalamnya dijuga dilakukan m kali maka pernyataan yang berada didalamnested loop sebanyak n x m.

• Loop yang terletak di dalam loop biasa disebutdengan loop di dalam loop (nested loop)

Page 43: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

43

Output ?

• public class loop1 {• public static void main(String args[]){• for(int i=0;i<3;i++){• for(int j=0;j<5;j++){• System.out.println("i : " + i + " j : " + j);• }• }• }• }

Page 44: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

44

Output• i : 0 j : 0• i : 0 j : 1• i : 0 j : 2• i : 0 j : 3• i : 0 j : 4• i : 1 j : 0• i : 1 j : 1• i : 1 j : 2• i : 1 j : 3• i : 1 j : 4• i : 2 j : 0• i : 2 j : 1• i : 2 j : 2• i : 2 j : 3• i : 2 j : 4

Page 45: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

45

Contoh Program• public class loop2 {• public static void main(String args[]){• for(int i=1;i<=3;i++){• for(int j=1;j<=3;j++){• System.out.print(i*j + " ");• }• System.out.println();• }• }• } 1 2 3

2 4 6 3 6 9

Page 46: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

46

Special Loop Control

• break [label];• continue [label];• label : statement; (statement ini berupa loop)

Page 47: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

47

Special Loop Control

• break digunakan untuk keluar (“prematurely exit”) dari switch statements, loop statements, dan labeled blocks.

• continue digunakan untuk meneruskan (“skip over and jump) ke akhir dari loop body, dan kembali keloop control statement.

• label digunakan untuk mengidentifikasi statement lain dimana statement lain ini meminta supaya block statement pada label ini dikerjakan.

Page 48: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

48

Special Loop Flow Control

Page 49: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

49

Contoh Program

• Menampilkan bilangan ganjil yang lebih kecil dari 20. Jikabertemu dengan angka 15 maka break dari proses looping

Output1 3 5 7 9 11 13

Page 50: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

50

Special Loop Flow Control

Page 51: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

51

Contoh Program

• Menampilkan bilangan ganjil yang lebih kecil dari 20. Angka15 tidak ditampilkan

Output1 3 5 7 9 11 13 17 19

Page 52: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

52

Special Loop Flow Control

Page 53: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

53

Contoh Program

Outputi = 0 j = 0Good-Bye

Page 54: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

54

Special Loop Flow Control

Page 55: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

55

Contoh Program

Outputi = 0 j = 0i = 1 j = 0i = 2 j = 0Good-Bye

Page 56: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

56

Soal

Page 57: Percabangan dan Perulangan

D4 LJ PJJ PENS-ITS

Pemrograman Berbasis Obyek

57

Soal