Kamis, 31 Januari 2013

Struktur Kontrol Alur Program



A.    Struktur kontrol
Struktur control Digunakan untuk mengatur susunan proses eksekusi statement-  statement di dalam program.
Ketika membuat program komputer, untuk kasus tertentu pembuat program (programmer) tidak jarang dihadapkan dengan pilihan tentang operasi (atau bagian program) yang harus diulang sampai beberapa kali. Untuk situasi seperti ini Java menyediakan fasilitas (reserved word) yang bisa dimanfaatkan untuk operasi berulang (looping) tersebut.

B.    Perulangan Pada Java
·         for
·         while
·         do-while

1.      For

Perulangan for menyediakan sarana mengulang kode dalam jumlah tertentu, bersifat terstruktur untuk mengulangi kode sampai tercapai batas tertentu.
Struktur perulangan for akan menjalankan statement atau sekumpulan statements dan mengulanginya selama persyaratan terpenuhi. Perbedaan dengan struktur while dan do-while adalah bahwa di dalam struktur for, batas awal dan akhir sudah harus ditentukan di awal. Sehingga banyaknya perulangan di dalam struktur for bisa diketahui sebelum perulangan dijalankan. Sedangkan pada struktur while dan do-while batas-batas  perulangannya bisa ditentukan bisa juga tidak, khususnya ketika kondisinya berhubungan dengan bilangan yang random atau dengan variable yang nilainya bisa berubah selama perulangan.
for (InitializationExpression;LoopCondition;StepExpression)

Statement
§ InitializationExpression :

Digunakan untuk inisialisasi variabel kendali pengulangan
§ LoopCondition :

Membandingkan variabel kendali pengulangan dengan suatu nilai batas
§ StepExpression :

Menspesifikasikan cara variabel kendali dimodifikasi sebelum iterasi berikutnya dari perulangan.
Nested for
public class NestedFor {
public static void main(String args[]){
for(int i=1;i<=10;i++){
for(int j=i;j<=10;j++){
System.out.print(j);}
System.out.println();
}
}
}



Hasil :
12345678910
2345678910
345678910
45678910
5678910
678910
78910
8910
910 
10

2.      While
Struktur while akan menguji suatu kondisi, kemudian menjalankan statement atau kumpulan statements jika kondisi tersebut terpenuhi (atau bernilai true). Proses ini akan dijalankan terus menerus selama kondisi bernilai true. Dengan kata lain statement atau statements tidak akan dijalankan jika kondisi bernilai false.
while (LoopCondition)
Statement
§  Jika LoopCondition dievaluasi true, maka Statement dieksekusi dan proses berlanjut diulangi.
§  Jika LoopCondition sejak semula dievaluasi false, maka statement tak pernah dieksekusi.

Contoh :
public class WhileLoop {
public static void main(String args[]){
int i=1;
while(i<=10){
int j=1;
System.out.println("i = "+i);
i++;
}
}
}
Hasil :
i = 1
i = 2
i = 3
i = 4
i = 5
i = 6
i = 7
i = 8
i = 9
i = 10

3.      Do While
      Perulangan do-while serupa dengan perulangan while, hanya pemeriksaan kondisi yang dilakukan adalah setelah statement. Perulangan do-while serupa dengan perulangan while, hanya saja pemeriksaan kondisi dilakukan setelah pernyataan.
do
Statement
while (LoopCondition)

Contoh :
public class DoWhileLoop {
public static void main(String args[]){
int i=1;
do{
System.out.println("i= "+i);
i++;
}while(i<11);
}
}

Hasil :
i= 1
i= 2
i= 3
i= 4
i= 5
i= 6
i= 7
i= 8
i= 9
i= 10


C.     Percabangan pada java
Di dalam program yang cukup kompleks biasanya mengandung suatu kasus dimana suatu tindakan (action) tertentu dikejakan apabila kondisi yang disyaratkan dipenuhi. Dalam pemgoraman kasus seperti ini disebut kasus bersyarat (atau kondisional). Java sebagai bahasa pemograman mempunyai beberapa jenis pencabangan yaitu :
·         If
·         if else
·         switch

1.      If
Percabangan IF di Java menyatakan bahwa suatu statement (pernyataan) akan dieksekusi bila memenuhi syarat/kondisi tertentu.
          
If (Ekspresi)
Statement

Contoh :
public class Logika_if {
public static void main (String args[]){
int targetnilai=60;
boolean lulus=false;
int nilaianda=70;
if (nilaianda > targetnilai){
lulus = true;
}
System.out.println(“Status kelulusan :”+lulus);
}
}
2.      If-Else
Pernyataan  if-else  digunakan  apabila  kita  ingin  mengeksekusi  beberapa  pernyataan dengan kondisi true dan pernyataan yang lain dengan kondisi false.
if (Condition)
Statement1
Else
Statement2

Contoh :
public class Statement_If_Else {
public static void main (String args[]) {
int targetnilai=60;
String hadiah=”";
int nilaianda=50;
if (nilaianda > targetnilai){
hadiah = “ponsel”;
} else{
hadiah = “radio”;
System.out.println(“Jenis hadiah :”+hadiah);
}
}
}

3.      Switch
Cara  lain  untuk  membuat  cabang  adalah  dengan  menggunakan  kata  kunci  switch. Switch  mengkonstruksikan cabang untuk beberapa kondisi dari nilai. Struktur switch-case mempunya fungsi yang sama dengan struktur if-else. Hanya saja kalau di dalam struktur if-else hanya disediakan dua pilihan (berdasarkan kondisi ligika true/false), sedangkan dalam struktru switch-case dimungkinkan memilih salah satu di antara banyak pilihan. Bentuk umum (atau tata cara penulisan sintaks) struktur switch case adalah sebagai berikut:
switch (variable){
case kondisi_1 :
statement_1 ;
break ;

case kondisi_2 :
statement_2 ;
break ;

case kondisi_3 :
statement_3 ;
break ;

default;
statement_default;
}

Contoh :
public class Switch01 {
public static void main (String args[]) {
int a;
a=5;
switch(a) {
case 0 : System.out.println("Nol");break;
case 1 : System.out.println("Satu");break;
case 2 : System.out.println("Dua");break;
case 3 : System.out.println("Tiga");break;
case 4 : System.out.println("Empat");break;
case 5 : System.out.println("Lima");break;
case 6 : System.out.println("Enam");break;
case 7 : System.out.println("Tujuh");break;
case 8 : System.out.println("Delapan");break;
case 9 : System.out.println("Sembilan");break;
default: System.out.println("Bukan Karakter Digit");
}
}
}
Pencabangan switch mengevaluasi dan membandingkan Expression untuk semua konstanta case dan mengendalikan eksekusi program ke pernyataan case yang cocok. Jika tidak ada konstanta case yang cocok dengan ekspresi maka program akan menuju ke DefaultStatementList.


Tidak ada komentar:

Posting Komentar