• Tidak ada hasil yang ditemukan

Staffsite STMIK PPKIA Pradnya Paramita b03f7 pertemuan 004

N/A
N/A
Protected

Academic year: 2018

Membagikan "Staffsite STMIK PPKIA Pradnya Paramita b03f7 pertemuan 004"

Copied!
39
0
0

Teks penuh

(1)

Struktur Kontrol

Struktur kontrol if

(2)

Struktur Kontrol

Struktur Kontrol : adalah statemen java yang digunakan untuk pemilihan sesuai hasil dari sebuah pernyataan yang bernilai true atau false. Secara garis besar dibagi menjadi dua bagian “if structure” dan “switch structure”.

Struktur - if :

yaitu struktur yang hanya mengeksekusi kegiatan yang menghasilkan nilai boolean true.

Sintaknya :

if (boolean_expr) statement; atau

(3)

Struktur

Kontrol

Contoh pseudocode :

If the student’s grade is greater than 70 Print “Passed”

Contoh flowchart :

Contoh java program : if ( grade > 70 )

System.out.println(“passed”);

grade > 70

System.out.println(“Passed”)

True false

Control Expression

(4)

Struktur - if / else :

Pada if sederhana, sebuah statemen dieksekusi jika nilai boolean ekpresi bernilai true, dan statemen dilewati jika boolean ekpresi bernilai false.

Namun pada kenyataan sehari-hari terkadang kita juga ingin mengeksekusi statemen yang ketika nilai boolean ekpresinya adalah false. Hal demikian dapat dilakukan dengan “if /else structure”

Sintaknya :

if (boolean_expr) statement 1; else

statement 2;

(5)

Contoh pseudocode : if (b*b – 4. *a*c) >= 0

write message that equetion has real roots. else

write message that equetion has complex roots. Contoh java program :

if ( (b*b – 4. *a*c) >= 0. )

System.out.println(“there are real roots”); else

System.out.println(“there are complex roots”);

(6)

Struktur - if/else if/…else :

Digunakan untuk menyeleksi satu dari sekian banyak pilihan, dimana pilihan sangatlah komplek sekali. Dimana tidak dapat ditangani hanya dengan if/else structure saja.

Sintaknya :

if (boolean_expr) if (boolean_expr) statement 1; statement 1; else if (boolean_expr) else

statement 2; if (boolean_expr) else statement 2;

statement 3; else

statement 3;

(7)

Contoh pseudocode :

if (b*b – 4. *a*c) >= 0

write message that equetion has two complex roots. else if (b*b – 4. *a*c) = 0

write message that equetion has two identical real roots. else

write message that equetion has two distinct real roots.

Contoh java program :

if ( (b*b – 4. *a*c) >= 0. )

System.out.println(“there are two complex roots”);

else if ( (b*b – 4. *a*c) == 0. )

System.out.println(“there are two identical real roots”);

else

System.out.println(“there are two distinct real roots”);

(8)

Multiple statement dalam if / else :

Pada contoh yang sudah diperlihatkan selalu satu baris statemen saja yang dikerjakan jika boolean_expr terpenuhi, bagaiman jika statemen yang dikerjakan lebih dari satu baris. Penyelesaiannya adalah jika lebih dari satu bari statemen yang ingin dikerjakan maka, haruslah menggunakan blok program yaitu tanda “{“ diawal baris pertama dan “}” setelah baris terakhir.

Sintaknya : if (boolean_expr) { statement 1;

statement 2; statement 3; } else {

statement 4; statement 5; }

(9)

Contoh Program : IfElse.java

Pernyataan Else digunakan sebagai alternat

if

apabila

proses seleksi

if

menghasilkan nilai false. Maka semua

block yang ada pada statement

else

akan dijalankan.

Dapat anda lihat bahwa di dalam seleksi

if(i==1)

menghasilkan nilai false karena nilai i adalah 2. Maka

blok yang dijalankan adalah blok else. Yaitu akan

mencetak

i is not 1

.

(10)

Struktur if Bertingkat :

if bertingkat, dimana didalam seleksi if dapat memiliki if, begitu juga dengan else. Yang membutuhkan seleksi sampai beberapa tingkat

kedalaman.

Sintaknya : if (boolean_expr) { if (boolean_expr)

statement 1; else {

statement 2; statement 3; } } else {

if (boolean_expr) statement 4; else

statement 5; }

(11)

Struktur Kondisi :

Operator kondisi (?:) merupakan persamaan if/else structure. Yang memiliki tiga buah argument yang diletakkan didalam kondisi ekpresi. Contoh java program :

if ( grade > 70 )

System.out.println(“Passed”); else

System.out.println(“Failed”);

Atau

System.out.println( grade > 70 ? “Passed” : “Failed” )

(12)
(13)

Switch

case

merupakan statement yang dapat

digunakan untuk proses penyeleksian dengan variable

tunggal yang diseleksi. Pada intinya,

switch case

merupakan proses seleksi tetapi yang diseleksi hanya

satu variable pada keyword

switch

dan terdapat

beberapa alternat

if

pilihan di dalam keyword

case

.

Untuk lebih jelasnya lihat contoh berikut ini :

SwitchCase.java

(14)

 Jalankan program di atas dan outputnya adalah i = 12. Perhatikan contoh di

atas, konsep dari switch case adalah membandingkan nilai variable i oleh

switch dengan nilai yang ada pada case. Perlu juga diingat bahwa tipe data i dengan nilai yang ada pada case harus sama. Misal i adalah int

maka nilai case juga harus integer. Misalnya seperti contoh di atas adalah 2, 6, dan 12.

 Sekarang coba anda ganti nilai i menjadi 13 maka outputnya akan menjadi i

bukan 2, 6, atau 12. Program akan membaca statement pada default

karena tidak ada seleksi yang sama pada proses seleksi case. Adapun keyword break digunakan untuk keluar dari proses seleksi. Untuk mencobanya, hilangkan semua break dan ganti i menjadi 2. Maka outputnya akan menjadi :

 i = 2

 i = 6

 i = 12

 i = bukan 2,6, atau 12

 Hal ini disebabkan karena setelah seleksi menemui nilai yang sama dan

menjalankan statement di dalamnya program tidak keluar dari blok switch

(15)

Contoh java program :

1. public class TestSwitch {

2. public static void main(String[] args) throws IOException { 3. int a = ….;

4. switch (a) {

5. case 1:

6. System.out.println( “value is 1”);

7. break;

8. case 2:

9. System.out.println( “value is 2”);

10. break;

11. default::

12. System.out.println( “Other than 1 or 2”);

13. break;

14. }

15. }

16. }

(16)

Struktur kontrol for

 Keyword for digunakan untuk melakukan perulangan dengan nilai

seleksi adalah sebuah angka numeric. Bisa berupa bilangan bulat maupun pecahan. Pseudo Code untuk for terdapat di bawah ini :

 Di dalam pseudo code dapat dilihat, nilai awal kita isi dengan

membuat variable dan diisi dengan angka awal proses. Untuk batas kita isi dengan batas perulangan, dan perubahan adalah perubahan nilai agar nilai var mencapai batas. Sebelum mencapai batas, program akan menjalankan statement yang ada dalam blok for

terus menerus.

for(nilai_awal ; batas ; perubahan)

(17)

Struktur kontrol for

public class Contoh1For {

(18)

Struktur kontrol for

 Contoh For Decrement

 Berikut ini adalah contoh dimana nilai yang berubah menggunakan

perubahan decrement atau nilai yang semakin menurun :

public class Contoh2For {

public static void main(String[] args)

{ for(int i=3;i>0;i--)

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

}

Output: 3

(19)

Struktur kontrol for

Berikut ini keterangan jalannya program secara

detail :

mulai -> i = 3

cek -> Apakah i > 0 ? -> true

System.out.println(i); -> cetak 3 i--; -> i = 2

cek -> Apakah i > 0 ? -> true

System.out.println(i); -> cetak 2 i--; -> i = 1

cek -> Apakah i > 0 ? -> true

System.out.println(i); -> cetak 1 i--; -> i = 0

(20)

Struktur kontrol for

 Contoh Program Pencetak bilangan Genap

public class Even {

public static void main(String[] args) {

for(int i=0; i <= 10 ; i += 2){

System.out.print(i + " "); }

System.out.println();

for(int i=10; i >= 0 ; i -= 2){

System.out.print(i + " "); }

}

}

Output

(21)

Struktur kontrol for

 Contoh Program Pencetak bilangan Ganjil

(22)

Struktur kontrol for

Nested For

public class NestedFor {

public static void main (String[] args) ( int i, j, product;

for ( i =1; i <= 3; i++) { for (j=1; j <= 3; j++) { product = i * j;

System.our.println(i + “ * “ + j + “ = “ + product); }

} }

(23)

Struktur kontrol While

 While do merupakan proses looping dengan seleksi tertentu.

Selama seleksi masih mempunyai nilai true maka loop akan terus berjalan. Lihat pseudo code di bawah ini :

 Lihat di atas terdapat var_selection, ini adalah variable yang akan

terus diseleksi ketika loop berjalan. Selama var_selection menghasilkan nilai true maka statement yang ada di dalam block

while akan dieksekusi. Diperlukan juga perubahan var_selection agar memberi batas proses loop. Jika batas tidak diberi, loop akan tidak bisa berhenti.

while ( var_selection )

{

// statement to loop // changing to stop loop

(24)

Struktur kontrol While

Contoh program :

public class Contoh1WhileDo {

public static void main(String[] args) {

int i = 0; while(i < 3){

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

}

}

}

Output : 0

(25)

Struktur kontrol While

 Secara lebih jelasnya, proses detail program di atas :

start

initialisation i = 0 while(i < 3 ) -> true

System.out.println(i); -> print 0 i++; -> i = 1 while(i < 3 ) -> true

System.out.println(i); -> print 1 i++; -> i = 2 while(i < 3 ) -> true

System.out.println(i); -> print 2 i++; -> i = 3 while(i < 3 ) -> false

(26)

Struktur kontrol do While

 Do while digunakan untuk melakukan looping minimal adalah satu

kali pengerjaan. Coba kita lihat pseudo code di bawah ini :

 Statement di dalam blok do-while dikerjakan satu kali dahulu. Baru

setelah itu seleksi terjadi di keyword while. Jika menghasilkan true

maka statement akan dikerjakan ulang, sebaliknya akan keluar dari loop. Contoh :

do

{

// statement // changing

(27)

Struktur kontrol do while

Contoh Program:

public class ContohDoWhile {

(28)

Struktur kontrol do while

 Lebih jelasnya lihat detail proses berikut ini :

start -> init i = 0

do -> System.out.println(i); -> print 0 i++ -> i = 1

selection -> while ( i < 3 ) -> true

do -> System.out.println(i); -> print 1 i++ -> i = 2

selection -> while ( i < 3 ) -> true

do -> System.out.println(i); -> print 2 i++ -> i = 3

(29)

Perintah break and Continue

break adalah perintah yang digunakan untuk menghentikan

kegiatan pengulangan.

Public class NestedFor {

public static void main (String[] args) ( int i, j, product;

for ( i =1; i <= 3; i++) { for (j=1; j <= 3; j++) { product = i * j;

if ( j == 3 ) break;

System.our.println(I + “ * “ + j + “ = “ +product); }

} }

(30)

Perintah break and Continue

break …. label statement :

dengan menambahkan label pada awal for terluar dapat menjadikan perintah break … label menghentikan semua pengulangan.

Public class NestedFor {

(31)

Perintah break and Continue

continue statement :

adalah perintah yang digunakan untuk melewati kegiatan yang ada dibawah perintah tersebut dan melanjutkan pengulangan.

Public class NestedFor {

public static void main (String[] args) ( int i, j, product;

for ( i =1; i <= 3; i++) { for (j=1; j <= 3; j++) { product = i * j;

if ( j == 2 ) continue;

System.our.println(I + “ * “ + j + “ = “ + product); }

} }

(32)

Perintah break and Continue

continue …. label statement :

dengan menambahkan label pada awal for terluar dapat menjadikan perintah continue … label melanjutkan pengulangan ke for terluar.

Public class NestedFor {

(33)

Formatting Output Data

Melakukan format pada hasil keluaran diperlukan agar tampilan dapat dilihat semenarik mungkin. Bila ini tidak dilakukan hasilnya kemungkinan tidak sesuai dengan harapan.

Contoh java program :

System.out.println(“Average price = “ + ave);

Hasilnya mungkin sbb:

(34)

Formatting Output Data

Angka yang ditunjukan diatas dapat menjadi masalah

didalam tabel jika format kolomnya tidak mencukupi,

akibatnya sebagian angka akan bergeser kebawah. Untuk

mengatasi masalah diatas perlu mengatur format dari hasil

tersebut

dengan

mengacu

kepada

package

java.text.NumberFormat serta java.text.DecimalFormat, dll

sebagainya.

Contoh lengkap dapat dilihat pada :

http://www.iro.umontreal.ca/~vaucher/Java/tutorials/Formatting.ht ml

(35)
(36)

Latihan

Perhatikan potongan program berikut, mana yang salah dari masing-masing soal berikut :

1. x = 5; 2. x = 1;

while ( x >= 0 ) while ( x <= 5 );

x++; x++;

3. for (x=0.1; x < 10.0; x += 0.1)

System.out.println(“x = “ + x );

4. switch (n) {

System.out.println(“Number is not 1 or 2”); break;

(37)

Latihan

Apa yang akan kerjakan dari program berikut: 5. public class Print {

public static void main(String[] args) { for ( int i = 1; i <= 10; i++) {

for ( int j = i; j <= 10; j++) { System.out.print(“

*

”); }

System.out.println(); }

(38)
(39)

While…

B

re

a

k

Referensi

Dokumen terkait

[r]

[r]

DINAS BINA MARGA DAN SUMBER DAYA AIR PANITIA PENGADAAN

Pada hari ini JUMAT, tanggal SEMBILAN BELAS, bulan OKTOBER, tahun DUA RIBU DUA BELAS, yang bertanda tangan dibawah ini Kelompok Kerja Pengadaan Barang Poltekkes Kemenkes

Bahkan menurut Brother (1982) dan Pauly (1983) dalam Wouthuyzen (1985), disebutkan bahwa data-data biologis yang biasa digunakan dalam menduga parameter pertumbuhan pada umumnya ada

Keuntungannya apabila zakat dipungut oleh negara adalah para wajib zakat lebih disiplin dalam menunaikan kewajib- annya dan fakir miskin lebih ter- jamin haknya,

Diajukan untuk memenuhi sebagian dari syarat untuk memperoleh gelar Sarjana Teknik.. Program Studi Teknik

MJPS 1 Tasikmalaya belum sesuai Standar Nasional Pendidikan. Kelengkapan sarana dan prasarana yang terdapat di Teknik Mekanik. Otomotif SMK MJPS 1 Tasikmalaya belum