Struktur Kontrol.

Slides:



Advertisements
Presentasi serupa
Pemrograman Terstruktur
Advertisements

Pengendalian Proses : Seleksi (Conditional)
TUGAS Buatlah program menghitung luas persegi panjang!
Menunjukkan berbagai peralatan TIK melalui gambar
Menempatkan Pointer Q 6.3 & 7.3 NESTED LOOP.
Tugas Praktikum 1 Dani Firdaus  1,12,23,34 Amanda  2,13,24,35 Dede  3,14,25,36 Gregorius  4,15,26,37 Mirza  5,16,27,38 M. Ari  6,17,28,39 Mughni.
Malang,22 November 2012
4/5/2017 PL/SQL SITI MUKAROMAH,S.Kom.
Dasar Pemrograman Komputer
1suhardjono waktu 1Keterkatian PKB dengan Karya Inovatif, Macam dan Angka Kredit Karya Inovatif (buku 4 halaman ) 3 Jp 3Menilai Karya Inovatif.
Array.
- PERTEMUAN 3 - PENYELEKSIAN KONDISI
Silahkan Salin Jawaban Anda DiKertas Sertakan : NIM. : Nama. : Kelas
Praktikum Bahasa Pemrograman
LINKED LIST.
Algoritma : CONTROL STRUCTURES
Universitas Muhammadiyah Malang Fakultas Teknik Jurusan Teknik Informatika Semester Genap Nur hayatin, S.ST.
Pemrograman Berorientasi Objek
WEEK 6 Teknik Elektro – UIN SGD Bandung PERULANGAN - LOOPING.
Selection (pemilihan) As’ad Djamalilleil
Pemrograman Berorientasi Objek
Modul 3: Kendali program dan teknik penyimpanan data
Struktur Perulangan Week 4 & 5.
Flow Control & Exception Handling
PERULANGAN Perulangan (loop) merupakan bentuk yang sering ditemui di dalam suatu program aplikasi. Di dalam bahasa Pascal, dikenal tiga macam perulangan,
Oleh : Sukma Murdani, S.Kom. SILABUS PENDAHULUAN Pengenalan OOP Pengenalan JAVA OOP (Object Oriented Programming) JAVA Class, Java Interface Encapsulation.
Pemrograman JAVA (TIB09)
Struktur Kontrol.
Luas Daerah ( Integral ).
Pengenalan Pemrograman 1 Versi 2.0 Struktur kontrol.
PEMINDAHAN HAK DENGAN INBRENG
Modul 1- Review Java.
FUNGSI MATEMATIKA DISKRIT K- 6 Universitas Indonesia
Pemrograman Terstruktur
Control Structures in Java Risanuri Hidayat, Ir., M.Sc.
KONTROL ALUR EKSEKUSI PROGRAM
SLIDE OTOMATIS PINDAH DALAM WAKTU 4-5 MENIT. A:kiriB:kanan Deklarasikan sebuah variabel dengan nama ‘isi’ yang mempunyai type array of double dengan ukuran.
PERTEMUAN 2 Variabel, Ekspresi, Operator, dan Flow Control
Struktur Kendali Proses (Seleksi)
PEMROGRAMAN KOMPUTER 2 4 SKS 2 TEORI DAN 2 PRAKTEK
PEMROGRAMAN BERORIENTASI OBJEK
MATERI 8 ALGORITMA DAN PEMROGRAMAN
FUNGSI STRUKTUR DISKRIT K-8 Program Studi Teknik Komputer
Nandang Hermanto PK2 Pertemuan 3. Perulangan Pernyataan while Pernyataan do..while Pernyataan for.
Bahan Kuliah IF2091 Struktur Diskrit
1 Pointer wijanarto. 2 Topik Introduction to Pointers Pointers dan Parameter Fungsi.
Pengenalan Pemrograman 1 Versi 2.0 Struktur kontrol.
Mendapatkan Input dari Keyboard
Statistika Deskriptif: Distribusi Proporsi
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 DPK Issa Arwani, S.kom, M.sc.
Bahan Kuliah IF2120 Matematika Diskrit
Pohon (bagian ke 6) Matematika Diskrit.
P OHON 1. D EFINISI Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit 2.
- PERTEMUAN 4 - PERULANGAN
Flow Control & Looping Pertemuan 4 Pemrograman Berbasis Obyek Oleh Tita Karlita.
PELATIHAN JAVA FUNDAMENTAL
Struktur Kendali Proses (Perulangan)
Struktur Kontrol Pemilihan
Struktur kontrol.
Perulangan (Iteration)
Struktur Kontrol Struktur kontrol if Struktur kontrol if-else
MODUL 3 PERULANGAN PERCABANGAN ARRAY
Transfer of control (pemindahan langkah)
STRUKTUR KONTROL.
Struktur Kontrol Pemilihan
Perulangan / Looping / Repetisi PEMROGRAMAN DASAR
PERCABANGAN Siti Mukaromah, S.Kom.
Percabangan dan Perulangan.
Pernyataan Kondisional, Perulangan dan Jump
UNIVERSITAS BUDI LUHUR FAKULTAS TEKNOLOGI INFORMASI HAL : 1 Pemrograman Berorientasi Objek Struktur Kontrol.
Transcript presentasi:

Struktur Kontrol

PEMROGRAMAN BERORIENTASI OBYEK Ada 3 jenis struktur kontrol, yaitu : Sequence Structure Selection Structure Repetition Structure Sequence Structure GASAL 2008/2009 PEMROGRAMAN BERORIENTASI OBYEK

Selection Structure if if…else switch if Bentuknya : if (kondisi) Statement1; Statement2; GENAP 2006/2007 BHS PEMROGRAMAN 2 (PG022)

Jika kondisi bernilai benar, maka statement1 yg akan dijalankan. Kondisi dalam statement if dapat dibentuk menggunakan operator kesamaan (equality operators) atau operator relasi (relational operators)Lihat materi operator pada pertemuan 2. Jika kondisi bernilai benar, maka statement1 yg akan dijalankan. Jika kondisi bernilai salah, maka statement1 tdk akan dijalankan. Tidak menggunakan semicolon ; diakhir if GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh : public class If1 { public static void main(String args[]) int nilai= 50; if (nilai>=60) System.out.println("Lulus"); System.out.println("Terima kasih"); } Hasilnya adalah : Terima kasih GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

public static void main(String args[]) int nilai= 70; public class If1 { public static void main(String args[]) int nilai= 70; if (nilai>=60) System.out.println("Lulus"); System.out.println("Terima kasih"); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

public static void main(String args[]) int nilai1= 50; int nilai2=75; //nama file : If2.java public class If2 { public static void main(String args[]) int nilai1= 50; int nilai2=75; if (nilai1==nilai2) System.out.println(nilai1+" = "+nilai2); if (nilai1>=nilai2) System.out.println(nilai1+" >= "+nilai2); if (nilai1<=nilai2) System.out.println(nilai1+" <= "+nilai2); if (nilai1!=nilai2) System.out.println(nilai1+" != "+nilai2); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

if…else Bentuk / Syntax : if (kondisi) { < STATEMENTS > } else GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

import javax.swing.*; public class IF2 { public static void main(String args[ ]) { String a = JOptionPane.showInputDialog("Masukkan Nilaimu!"); int nilai = Integer.parseInt(a); if(nilai>60) { JOptionPane.showMessageDialog( null, "Selamat Anda Lulus","Hasil", JOptionPane.INFORMATION_MESSAGE ); } else { JOptionPane.showMessageDialog( null, "Maaf Anda belum beruntung", "Hasil", JOptionPane.INFORMATION_MESSAGE ); } System.exit(0); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

If … else bisa lebih dari satu (Nested if). Misal : if (nilai>=90) System.out.println("Grade : A"); else if (nilai>=80) System.out.println("Grade : B"); if (nilai>=70) System.out.println("Grade : C"); if (nilai>=60) System.out.println("Grade : D"); System.out.println("Grade : E"); GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Tapi akan lebih mudah dibaca jika ditulis dalam bentuk di bawah ini : if (nilai>=90) System.out.println("Grade : A"); else if (nilai>=80) System.out.println("Grade : B"); else if (nilai>=70) System.out.println("Grade : C"); else if (nilai>=60) System.out.println("Grade : D"); else System.out.println("Grade : E"); GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

tunjKel = tunjIstri+tunjAnak;} Else tunjKel = 15000; If..else juga bisa diletakkan di dalam bagian if atau bagian else nya (Nested if … else atau if..else bersarang) Misal : If (status==‘1’) { tunjIstri = 20000; if (jmlAnak>=1) tunjAnak = 10000*jmlAnak; else tunjAnak = 0; tunjKel = tunjIstri+tunjAnak;} Else tunjKel = 15000; GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Catatan : Gunakan tanda kurung {} pada bagian if atau else jika memiliki lebih dari 1 statement agar dikenali sebagai satu blok. GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Conditional Operator (?:) Merupakan ternary operator (membutuhkan 3 operand). Contoh : nilai>60 ? “Lulus” : “Gagal” Operand pertama (di sebelah kiri tanda ?) merupakan kondisi yg bernilai benar atau salah. Operand kedua (di sebelah kanan tanda ?) merupakan perintah yg akan dijalankan jika kondisi bernilai benar. Operand ketiga (di sebelah kanan tanda :) merupakan perintah yang akan dijalankan jika kondisi bernilai salah. GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh penggunaan ?: Modifikasi dari program pada halaman 9 import javax.swing.*; public class If1 { public static void main(String args[ ]) { String a = JOptionPane.showInputDialog("Masukkan Nilaimu!"); int nilai = Integer.parseInt(a); JOptionPane.showMessageDialog(null, nilai>60?"Selamat":"Maaf","Hasil", JOptionPane.INFORMATION_MESSAGE); System.exit(0); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh lain (Sblm menggunakan operator ?:) public class If3 { public static void main(String args[]) int nilai = 81; if (nilai>=90) System.out.println("Grade : A"); else if (nilai>=80) System.out.println("Grade : B"); else if (nilai>=70) System.out.println("Grade : C"); else if (nilai>=60) System.out.println("Grade : D"); else System.out.println("Grade : E"); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Setelah menggunakan operator ?: public class If3 { public static void main(String args[]) int nilai = 81; System.out.println(nilai>=90?"Grade : A" :(nilai>=80?"Grade : B" :(nilai>=70?"Grade : C" :(nilai>=60?"Grade : D" :"Grade : E")))); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Perintah switch Perintah switch dapat menyederhanakan logika dari sebuah program Bentuk program dengan perintah if dan else if dapat dikonversi ke dalam perintah switch Program dengan perintah if dan else if if (x==0) doSomething0(); else if (x==1) doSomething1(); else if (x==2) doSomething2(); else if (x==3) doSomething3(); else doSomethingElse(); GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Setelah menggunakan perintah switch-case switch(x) { case 0: doSomething0();break; case 1: doSomething1();break; case 2: doSomething2();break; case 3: doSomething3();break; default: doSomethingElse(); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh lain : public class switch1 { public static void main(String args[]) int nilai = 2; switch(nilai) case 1: System.out.println("Satu"); break; case 2: System.out.println("Dua"); break; case 3: System.out.println("Tiga"); break; default: System.out.println(“Tdk ada dalam pilihan"); } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Repetition Structure (Struktur Perulangan) While… For … Do … while GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

while … Bentuk 1 : while (kondisi) Statement; Bentuk 2 : { Statement1; Statement2; … Statementn+1; } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

while (Lanjutan) Perintah dalam while akan dikerjakan selama kondisi bernilai benar. Proses perulangan terjadi minimal 0 kali. Dapat menggunakan counter-controlled repetition dan sentinel-controlled repetition. Counter-controlled repetition  perulangan akan terus terjadi sejumlah isi dari counter yg telah ditetapkan. Sentinel-controlled repetition  perulangan akan terus terjadi sampai ditemukannya sentinel value (disebut juga special value, signal value, dummy value atau flag value) yang menandakan proses perulangan harus berhenti. GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh Program //Average1.java //menggunakan counter-controlled repetition import javax.swing.*; public class Average1 { public static void main(String args[]) int total; int nilaiCounter; int nilai; int average; String nilaiString; total=0; nilaiCounter=1; GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

while(nilaiCounter<=5) { nilaiString = JOptionPane.showInputDialog("Masukkan Nilainya : "); //nilaiString nya berbentuk string nilai = Integer.parseInt(nilaiString); //mengubah string ke integer --> ada di paket java.lang total = total + nilai; nilaiCounter = nilaiCounter + 1; } average = total / 5; JOptionPane.showMessageDialog(null,"Nilai Rata2 Kelas : "+average,"Hasil", JOptionPane.INFORMATION_MESSAGE); System.exit(0); } //akhir main } //akhir dari class Average1 GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Hasilnya adalah : GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh Lain : //Average2.java //menggunakan sentinel-controlled repetition import javax.swing.*; public class Average2 { public static void main(String args[]) int total; int nilaiCounter; int nilai; int average; String nilaiString; total=0; nilaiCounter=0; GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

nilaiString = JOptionPane.showInputDialog ("Masukkan Nilainya atau -1 untuk berhenti : "); nilai = Integer.parseInt(nilaiString); while(nilai != -1) { total = total + nilai; nilaiCounter = nilaiCounter + 1; ("Masukkan Nilainya : "); //nilaiString nya berbentuk string //mengubah string ke integer --> ada di java.lang } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

if (nilaiCounter != 0) //kalau ada nilai yg dimasukkan { average = total / nilaiCounter; JOptionPane.showMessageDialog(null, "Nilai Rata2 Kelas : "+average,"Hasil", JOptionPane.INFORMATION_MESSAGE); } else //kalau tidak ada nilai yg dimasukkan "Tidak ada nilai yg dimasukkan","Hasil", System.exit(0); } //akhir dari main } //akhir dari class Average2 GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

for Bentuk 1 : for (inisialisasi; kondisi; increment) Statement; … Statementn+1; } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh Syntax: GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Examples Using the for Statement Varying control variable in for statement Vary control variable from 1 to 100 in increments of 1 for ( int i = 1; i <= 100; i++ ) Vary control variable from 100 to 1 in increments of –1 for ( int i = 100; i >= 1; i-- ) Vary control variable from 7 to 77 in increments of 7 for ( int i = 7; i <= 77; i += 7 ) Vary control variable from 20 to 2 in decrements of 2 for ( int i = 20; i >= 2; i -= 2 ) Vary control variable over the sequence: 2, 5, 8, 11, 14, 17, 20 for ( int i = 2; i <= 20; i += 3 ) Vary control variable over the sequence: 99, 88, 77, 66, 55, 44, 33, 22, 11, 0 for ( int i = 99; i >= 0; i -= 11 ) GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh Program : //Average3.java //menggunakan counter-controlled repetition import javax.swing.*; public class Average3 { public static void main(String args[]) int total; int nilaiCounter; int nilai; int average; String nilaiString; total=0; GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

for (nilaiCounter=1; nilaiCounter<=5; nilaiCounter++) { nilaiString = JOptionPane.showInputDialog ("Masukkan Nilainya : "); //nilaiString nya berbentuk string nilai = Integer.parseInt(nilaiString); //mengubah string ke integer --> ada di paket java.lang total = total + nilai; } average = total / 5; JOptionPane.showMessageDialog(null, "Nilai Rata2 Kelas : "+average,"Hasil", JOptionPane.INFORMATION_MESSAGE); System.exit(0); } //akhir dari main } // akhir dari class Average3 GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh Program : //Average4.java //menggunakan sentinel-controlled repetition import javax.swing.*; public class Average4 { public static void main(String args[]) int total; int nilaiCounter; int nilai; int average; String nilaiString; total=0; GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

nilaiString = JOptionPane.showInputDialog ("Masukkan Nilainya atau -1 untuk berhenti : "); nilai = Integer.parseInt(nilaiString); for (nilaiCounter=0; nilai != -1; nilaiCounter++) { total = total + nilai; ("Masukkan Nilainya : "); //nilaiString nya berbentuk string //mengubah string ke integer --> ada di paket java.lang } GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

if (nilaiCounter != 0) //kalau ada nilai yg dimasukkan { average = total / nilaiCounter; JOptionPane.showMessageDialog(null, "Nilai Rata2 Kelas : "+average,"Hasil", JOptionPane.INFORMATION_MESSAGE); } else //kalau tidak ada nilai yg dimasukkan "Tidak ada nilai yg dimasukkan","Hasil", System.exit(0); GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

do…while Bentuk 1 : Bentuk 2 : do do statement; { while (kondisi); statementn+1; } while (kondisi); GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

do…while lanjutan Hampir sama dengan while… Proses cek kondisi berada di bagian while Sehingga bagian do minimal dikerjakan 1 kali. Pada bagian do, jika statement lebih dari 1, tidak perlu menggunakan kurawal { }. Tapi lebih baik menggunakan kurawal { } agar tidak terjadi kesalahan dalam pembacaan kode program oleh programmer atau orang lain GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

break dan continue Break dipakai jika ingin berhenti dari proses looping dan switch. Continue dipakai jika ingin melakukan iterasi berikutnya dalam proses looping dengan mengabaikan perintah/statement di bawahnya. GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh Class ContohBreak{ public static void main(String args[]){ for(i=0;i<10;i++){ if(i==5) break; System.out.print(i); }

Contoh Class ContohContinue{ public static void main(String args[]){ for(i=0;i<10;i++){ if(i==5) continue; System.out.print(i); }

Contoh Program Menggunakan Perintah Break //Nama file : BreakTest.java //program utk memberhentikan proses looping //menggunakan break import javax.swing.JOptionPane; public class BreakTest { public static void main(String args[]) String output = ""; int count; GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

for(count=1; count<=10; count++) { if (count==5) break; output = output + count + " "; //perintah di atas bisa diganti menjadi //output += count + " "; } output = output + "\nBerhenti looping pada count = "+count; //output += "\nBerhenti looping pada count = "+count; JOptionPane.showMessageDialog(null, output); System.exit(0); } //akhir dari main } //akhir dari class BreakTest GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Hasilnya : GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Contoh Program Menggunakan Perintah Continue //Nama file : ContinueTest.java //program utk melanjutkan proses looping //menggunakan continue import javax.swing.JOptionPane; public class ContinueTest { public static void main(String args[]) String output = ""; int count; GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

for(count=1; count<=10; count++) { if (count==5) continue; output = output + count + " "; //perintah di atas bisa diganti menjadi //output += count + " "; } output = output + "\nMenggunakan continue utk skip mencetak 5“; //output += "\nMenggunakan continue utk skip mencetak 5”; JOptionPane.showMessageDialog(null, output); System.exit(0); } //akhir dari main } //akhir dari class ContinueTest GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Hasilnya : GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Latihan Buat program dengan menggunakan perintah for GENAP 2006/2007 BHS. PEMROGRAMAN 2 (PG022)

Latihan Cetaklah Bilangan Genap dari 1 s.d 100 Cetaklah Bilangan Ganjil dari 1 s.d. 100

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) { case 1: System.out.println(“Number is 1”); case 2: System.out.println(“Number is 2”); break; default: System.out.println(“Number is not 1 or 2”); }