Rabu, 10 Oktober 2012

Struktur Kontrol (Part1)


Struktur Kontrol
6.1 Tujuan

Pada bab sebelumnya, kita sudah mendapatkan contoh dari program terstruktur,
dimana setiap pernyataan dieksekusi setelah pernyataan sebelumnya sesuai dengan
urutannya. Pada bagian ini, kita akan mempelajari tentang struktur kontrol dimana
kita dapat mengubah cara eksekusi pada pernyataan yang dibuat di program kita.

Pada akhir pembahasan, diharapkan pembaca dapat :
 Menggunakan struktur kontrol pemilihan (if, else, switch) yang digunakan
untuk memilih blok kode yang akan dieksekusi
 Menggunakan struktur kontrol pengulangan (while, do-while, for) untuk
mengeksekusi blok tertentu pada program beberapa kali.
 Menggunakan pernyataan-pernyataan percabangan (break, continue, return)
yang digunakan untuk mengatur arah dari aliran program.
6.2 Struktur Kontrol Pemilihan
Struktur kontrol pemilihan adalah pernyataan dari Java yang mengijinkan user untuk
memilih dan mengeksekusi blok kode spesifik dan mengabaikan blok kode yang lain.
6.2.1Statement if
Pernyataan if akan menentukan sebuah pernyataan (atau blok kode) yang akan eksekusi
jika dan hanya jika persyaratan bernilai benar(true).
Bentuk dari pernyataan if,
if( boolean_expression )
statement;
atau
if( boolean_expression ){
statement1;
statement2;
. . .
}
dimana, boolean_expression adalah sebuah penyataan logika (true/false) atau variabel
bertipe boolean.

Berikut ini adalah potongan kode dari pernyataan if:
int grade = 68;
if( grade > 60 ) System.out.println("Congratulations!");
atau
int grade = 68;
if( grade > 60 ){
System.out.println("Congratulations!");
System.out.println("You passed!");
}

Petunjuk Penulisan Program :
1. Boolean_expression pada pernyataan i f harus merupakan nilai boolean).Hal ini
berarti persyaratan harus bernilai true atau false.
2. Masukkan statement di dalam blok if. Contohnya,
if( boolean_expression ){
//statement1;
//statement2;
}

6.2.2Statement if-else
Pernyataan if-else digunakan apabila kita ingin mengeksekusi beberapa pernyataan
dengan kondisi true dan pernyataan yang lain dengan kondisi false.
Bentuk statement if-else,
if( boolean_expression )
statement;
else
statement;
dapat juga ditulis seperti,
if( boolean_expression ){
statement1;
statement2;
. . .
}
else{
}
statement1;
statement2;
. . .
Berikut ini contoh code statement if-else,
int grade = 68;
if( grade > 60 ) System.out.println("Congratulations!");
else System.out.println("Sorry you failed");
atau
int grade = 68;
if( grade > 60 ){
System.out.println("Congratulations!");
System.out.println("You passed!");
}
else{
}






Petunjuk Penulisan Program :
1.Untuk menghindari kebingungan, selalu letakkan sebuah pernyataan atau beberapa
pernyataan di dalam blok if-else didalam tanda kurawal {},
2. Anda dapat memiliki blok if-else yang bersarang. Ini berarti anda dapat memiliki blok
if-else yang lain di dalam blok if-else. Contohnya,
if( boolean_expression ){
if( boolean_expression ){
. . .
}
} else{
. . .
}




6.2.3 Statement if-else-if
Pernyataan pada bagian kondisi else dari blok if-else dapat menjadi struktur if-else
yang lain. Kondisi struktur seperti ini mengijinkan kita untuk membuat seleksi
persyaratan yang lebih kompleks.
Bentuk statement if-else if,
if( boolean_expression1 )
statement1;
else if( boolean_expression2 )
statement2;
else
statement3;
Sebagai catatan : anda dapat memiliki banyak blok else-if sesudah pernyataan if. Blok else
bersifat opsional dan dapat dihilangkan. Pada contoh yang ditampilkan di atas, jika
boolean_expression1 bernilai true, maka program akan mengeksekusi statement1 dan
melewati pernyataan yang lain. Jika boolean_expression2 bernilai true, maka program akan mengeksekusi statement2 dan melewati statement3.
Berikut ini contoh code statement if-else-if
int grade = 68;
if( grade > 90 ){
System.out.println("Very good!");
}
else if( grade > 60 ){
System.out.println("Very good!");
}
else{
}
System.out.println("Sorry you failed");


6.2.4Kesalahan umum ketika menggunakan statement if-else:
1. Kondisi pada statement if tidak mengevaluasi nilai logika boolean. Contohnya :
//SALAH
int number = 0;
if( number ){
//some statements here
}
Variabel number tidak memiliki nilai Boolean.
2. Menggunakan operator = sebagai operator perbandingan yang seharusnya adalah
operator == . Contohnya,
//SALAH
int number = 0;
if( number = 0 ){
//Beberapa pernyataan
}
Seharusnya kode tersebut ditulis,
//BENAR
int number = 0;
if( number == 0 ){
//beberapa pernyataan
}
3. Penulisan elseif yang seharusnya ditulis sebagai else if.







6.2.5Contoh statement if-else-else if


public class Grade
{
public static void main( String[] args )
{
double grade = 92.0;
if( grade >= 90 ){
System.out.println( "Excellent!" );
}
else if( (grade < 90) && (grade >= 80)){
System.out.println("Good job!" );
}
else if( (grade < 80) && (grade >= 60)){
           System.out.println("Study harder!" );
}
else{
}
}
}
        System.out.println("Sorry, you failed.");



6.2.6Statement switch
Cara lain untuk membuat cabang adalah dengan menggunakan kata kunci switch.
Switch mengkonstruksikan cabang untuk beberapa kondisi dari nilai.
Bentuk statement switch,
switch( switch_expression ){
case case_selector1:
statement1; //
statement2; //block 1
. . . //
break;
case case_selector2:
statement1; //
statement2; //block 2
. . . //
break;
. . .
default:
}
statement1; //
statement2; //block n
. . . //
break;
switch_expression adalah ekspresi integer atau karakter dan case_selector1,
case_selector2 dan seterusnya adalah konstanta unik dari nilai integer atau
karakter.
Ketika pernyataan switch ditemukan pada potongan kode program, java pertamakali akan
memeriksa switch_expression, dan menuju ke case yang akan menyamakan nilai yang
dimiliki oleh switch_expression. Selanjutnya program akan mengeksekusi pernyataan
pada dari kode setelah case yang ditemukan sampai menemui pernyataan break,
selanjutnya akan mengabaikan pernyataan yang lainnya hingga akhir dari struktur dari
pernyataan switch.
Jika tidak ditemui case yang cocok, maka program akan mengeksekusi blok default.
Sebagai catatan, bahwa bagian blok default adalah opsional. Sebuah pernyataan switch bisa jadi tidak memiliki blok kode default.
CATATAN:
 Tidak seperti padapernyataan if, beberapa pernyataan pada struktur pernyataan switch
akan dieksekusi tanpa memerlukan tanda kurung kurawal ({}).
 Ketika sebuah case pada pernyataan switch menemui kecocokan, semua pernyataan
pada case tersebut akan dieksekusi. Tidak hanya demikian, pernyataan lain
yang berada pada case yang sesuai juga akan dieksekusi.
 Untuk menghindari program mengeksekusi pernyataan pada case berikutnya,
kita menggunakan pernyataan break sebagai pernyataan akhir pada setiap blok case.

Petunjuk Penulisan Program :
1. Menentukan penggunaan pernyataan if atau pernyataan switch adalah sebuah
keputusan programmer. Programmer dapat menentukan pernyataan yang mana
yang akan dipakai berdasarkan kemudahan membaca program dan faktor-faktor
yang lain.
2. Pernyataan if dapat digunakan untuk membuat keputusan berdasarkan rentang nilai
tertentu atau kondisi tertentu, sedangkan pernyataan switch membuat keputusan
hanya berdasarkan nilai unik dari tipe integer atau karakter.






Tidak ada komentar:

Posting Komentar