- Back to Home »
- Struktur Kontrol
Posted by : Unknown
22 October 2012
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.
Statement
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;
. . .
}
di
mana, 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;
}
Statement 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{
}
System.out.println("Sorry you failed");
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{
. . .
}
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 el se-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("Good!");
}
else{
}
System.out.println("Sorry
you failed");
Kesalahan
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.
Contoh
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.");
}
}
}
Statement switch
Cara lain
untuk membuat cabang
adalah dengan menggunakan
kata kunci switch.
Switch mengkons truksikan cabang unt uk 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 pertama kali 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
mengabai kan 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 pada pernyataan 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
tersebutakan 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 embuat keputusan hanya berdasarkan nilai unik
dari tipe integer atau karakter.
Contoh
statement switch
public class Grade
{
public static void main( String[] args )
{
int grade = 92;
switch(grade){
case 100:
System.out.println(
"Excellent!" );
break;
case 90:
System.out.println("Good
job!" );
break;
case 80:
System.out.println("Study
harder!" );
break;
default:
System.out.println("Sorry, you
failed.");
}
}
}
Struktur Kontrol Perulangan
Struktur kontrol pengulangan
adalah berupa pernyataan
dari Java yang
mengijinkan kita untuk mengeksekusi
blok code berulang-ulang sesuai dengan jumlah tertentu yang diinginkan.
Ada ti ga macam jenis dari struktur kontrol pengul angan yaitu while,
do-while, dan for-loops.
While loop
Pernyataan while
loop adal ah pernyataan
atau blok pernyataan
yang diulang-ulang
sampai mencapai
kondisi yang cocok.
Bentuk pernyataan
while,
while( boolean_expression ){
statement1;
statement2;
. . .
}
Pernyataan di
dalam while loop
akan dieksekusi berulang-ulang selama
kondisi
boolean_expression
bernilai benar (true).
Contoh, pada kode
dibawah ini,
int i = 4;
while ( i > 0 ){
System.out.print(i);
i--;
}
Contoh diatas
akan mencetak angka
4321 pada layar.
Perlu dicatat jika
bagian i--; dihilangkan,
akan menghasilkan pengulangan
yang terus menerus
(infinite loop). Sehingga,
ketika menggunakan while loop
atau bentuk pengulangan yang lain, pastikan Anda memberikan
pernyataan yang membuat pengulangan berhenti pada suatu kondisi.
Berikut ini
adalah beberapa contoh while loop,
Contoh 1:
int x = 0;
while (x<10)
{
System.out.println(x);
x++;
}
Contoh 2:
//infinite loop
while(true)
System.out.println(“hore”);
Contoh 3:
//no loops
// statement is not even executed
while (false)
System.out.println(“hore”);
Do-while loop
Do-while loop
mirip dengan while-loop. Pernyataan di dal am
do-while loop akan dieksekusi beberapa kali selama kondisi bernilai
benar(true). Perbedaan antara while
dan do-while loop adalah
dimana pernyataan di dalam
do-while loop akan dieksekusi sedikitnya satu kali.
Bentuk pernyataan
do-while,
do{
statement1;
statement2;
. . .
}while( boolean_expression );
Pernyataan di
dalam do-while loop akan
dieksekusi pertama kali,
dan akan dievaluasi
kondisi dari
boolean_expression. Jika nilai pada
boolean_expression tersebut bernilai true, pernyataan di dalam do-while
loop akan dieksekusi lagi.
Berikut ini
beberapa contoh do-while loop:
Contoh 1:
int x = 0;
do
{
System.out.println(x);
x++;
}while (x<10);
Contoh ini akan
memberikan output 0123456789 pada layar.
Contoh 2:
//infinite loop
do{
System.out.println(“hore”);
} while (true);
Contoh di
atas akan melakukan
pengul angan terus menerus
yang menulis kat a
“hore”
pada layar.
Contoh 3:
//one loop
// statement is executed once
do
System.out.println(“hore”);
while (false);
Contoh di atas
akan memberikan output hore pada layar.
Panduan
pemrograman:
1. Kesalahan pemrograman yang biasa terjadi
ketika menggunakan do-while loop adalah
lupa untuk
menulis titik koma (;) setelah ekspresi while.
do{
...
}while(boolean_expression)//-
salah>tidak ada titik koma(;)
2. Seperti pada while loop, pastikan do-while
loop anda berhenti pada suatu kondisi.
For loop
Pernyataan for
loop memiliki kondisi hampir mirip seperti struktur pengulangan sebelumnya yaitu
melakukan pengul angan untuk
mengeksekusi kode yang sama
sebanyak jumlah yang telah ditentukan.
Bentuk dari for
loop,
for (InitializationExpression; LoopCondition; StepExpression){
statement1;
statement2;
. . .
}
dimana,
InitializationExpression -
inisialisasi dari variabel loop.
LoopCondition -
membandingkan variabel loop pada nilai batas.
StepExpression -
perubahan nilai.
Berikut ini
adalah contoh dari for loop,
int i;
for( i = 0; i < 10; i++ ){
System.out.print(i);
}
Pada contoh
ini, pernyataan i =0
merupakan inisialisasi dari
vari abel. Selanjutnya,
kondisi i<10 diperiksa. Jika kondisi bernilai true,
pernyataan di dalam for loop dieksekusi. Kemudian,
ekspresi i++ di eksekusi,
lalu akan kembali pada bagian
pemeriksaan terhadap kondi si
i<10 lagi. Kondisi
ini akan dilakukan
berulang-ulang sampai mencapai nilai yang salah (false).
Contoh tadi,
adalah contoh yang sama dari while loop,
int i = 0;
System.out.print(i);
i++;
}