Kontrol Kondisi dan Permasalahan Logika

Control Structure

Control structure adalah cara suatu program ditangani dan dijalankan. Ada tiga jenis control sructure, yaitu: (1) sequence structure (2) selection structure dan (3) repetition structure.

Sequence Structure

Sequence structure merupakan penanganan program yang dijalankan secara berurutan, dari baris kode paling atas hingga baris terakhir. Ilustrasi dari contoh program pada pembahasan sebelumsebelumnya merupakan sequence structure.

Gambar di atas, merupakan activity diagram yang menjelaskan jalannya program dari urutan paling atas hingga paling akhir. Aktifitas pertama adalah mencari total nilai (grade) kemudian dilanjutkan pada aktifitas berikutnya, yaitu menambahkan satu untuk menghitung berapa kali nilai masuk berikutnya selesai. Sistem secara urut menjalankan program tersebut.

Selection Structure

Selection structure adalah penanganan program yang berdasarkan pada seleksi kondisi tertentu sehingga pada kondisi tertentu (salah) memungkinkan ada baris kode yang dilompati. Untuk menentukan kondisi tersebut, selection structure menggunakan if statement. Kondisi tersebut harus bernilai boolean sehinggga kondisi tersebut berupa ekspresi yang menggunakan equality, relational, dan logical operator. Bentuk umum control structure sebagai berikut:

// block if
if(condition){
//statement
}
// end

Condition / kondisi merupakan suatu ekspresi yang menghasilkan nilai boolean (true / false). Jika kondisi tersebut bernilai true maka sistem menjalankan statement di dalam if statement namun jika kondisi tersebut bernilai false maka sistem tidak menjalankan statement tersebut. Ada tiga jenis selection structure, diantaranya: (1) if single-selection (2) if doubleselection dan (3) nested if double-selection.

if single-selection (if)

if single-selection adalah if statement yang hanya memiliki satu kondisi untuk menangani jalannya pemrograman, yaitu hanya kondisi benar (true). Jika kondisinya bernilai benar maka sistem akan menjalankan kode yang ada dalam if statement, jika salah maka dilompati / tidak dijalankan.

Ilustrasi di atas menjelaskan bahwa jika kondisi “grade >= 60” (dalam keadaan benar / true) maka sistem menjalankan if statement, yaitu print “Passed”, jika salah atau “grade < 60” maka sistem tidak menjalankan if statement tersebut (melompat ke baris di luar if statement tersebut).

public class Single {
 public static void main(String args[]){
 int grade = 100;

 if(grade >= 60){
 System.out.println("Passed");
 }
 }
}

Pada baris 5 “grade >= 60” merupakan kodisi if statement dalam bentuk ekspresi yang harus terpenuhi (true) untuk bisa mengakses baris 6. Jika kondisi tersebut tidak memenuhi (false) maka sistem melompat ke baris 8 (atau tidak menjalakan if statement ).

if double-selection (if..else)

if double-selection adalah if..else statement yang memiliki dua kondisi untuk menangani jalannya pemrograman, yaitu kondisi benar (true) pada if statement dan kondisi salah (false) pada else statement. Jika kondisi if statement benar maka sistem akan menjalankan kode yang ada di dalam statement if, jika salah (false) sistem akan melompat dan langsung mengeksekusi ke else statement.

Ilustrasi di atas menjelaskan bahwa jika kondisi “grade >= 60” (dalam keadaan benar / true) maka sistem menjalankan if statement, yaitu: print “Passed”, jika salah atau “grade < 60” maka sistem menjalankan else statement, yaitu: print “Failed”.

 public static void main(){
 int grade = 100;
 if(grade >= 60){
 System.out.println("Passed");
 }else{
 System.out.println("Failed");
 }
 }

}

Pada baris 3 “grade >= 60” merupakan kodisi if statement dalam bentuk ekspresi yang harus terpenuhi (true) untuk bisa mengakses baris 4. Jika kondisi tersebut tidak memenuhi (false) maka sistem melompat ke else statement dan menjalankan baris 6.

nested if double-selection

Nested if double-selection adalah if..else yang bersarang, dimana if..else statement muncul beberapa kali dalam satu rangkaian.

public class Nested {
 public static void main(String[] args){
  int grade = 70;
  if(grade >= 90){
  System.out.println("A");
  }else if(grade >= 80){
   System.out.println("B");
  }else if(grade >= 70){
   System.out.println("C");
  }else if(grade >= 60){
   System.out.println("D");
  }else{
   System.out.println("F");
  }
 }
}

Ilustrasi di atas menjelaskan nested if double-selection, ada tiga if..else pada ilustrasi tersebut. Cara kerjanya adalah kondisi if statement yang paling atas dicek kebenarannya terlebih dahulu, jika pada kondisi if..else paling atas (pertama) bernilai true maka sistem akan menjalankan statement if..else pertama (“A”) dan langsung keluar dari nested if doubleselection. Namun jika kondis if..else tersebut bernilai false maka melanjutkan pada statement if..else berikutnya, begitu juga seterusnya hingga ditemukan kondisi yang bernilai true. Jika tidak ada kondisi if statement yang bernilai true maka sistem menjalankan else statement (“F”) dan keluar dari nested if double-selection.

Conditional Operator

Conditional operator adalah operator sebagai pengganti if..else statement. Conditional operator menggukan simbol “?:”, dengan format sebagai berikut:

condition (expression) ? true statement : false statement

public class ConditionalOperator {
 public static void main(String[] args){
 int grade = 100;
 System.out.println( grade >=60 ? "Passed" :
"Failed");
}
}

Pada baris 4 menjelaskan jika kondisi “grade >= 60” bernilai true maka sistem menampilkan tulisan “Passed” namun jika kondisi tersebut bernilai false maka sistem menampilkan tulisan “Failed”.

Rangkuman

Control structure adalah cara suatu program ditangani dan dijalankan. Ada tiga jenis control sructure, yaitu: (1) sequence structure (2) selection structure dan (3) repetition structure. Sequence structure merupakan penanganan program yang dijalankan secara berurutan, dari baris kode paling atas hingga baris terakhir. Selection structure adalah penanganan program yang berdasarkan pada seleksi kondisi tertentu sehingga pada kondisi tertentu (salah) memungkinkan ada baris kode yang dilompati. Ada tiga jenis selection structure, diantaranya: (1) if single selection (2) if double-selection dan (3) nested if double-selection. if single-selection adalah if statement yang hanya memiliki satu kondisi untuk menangani jalannya pemrograman, yaitu hanya kondisi benar (true). if double-selection adalah if..else statement yang memiliki dua kondisi untuk menangani jalannya pemrograman, yaitu kondisi benar (true) pada if statement dan kondisi salah (false) pada else statement. Nested if double-selection adalah if..else yang bersarang, dimana if..else statement muncul beberapa kali dalam satu rangkaian. Conditional operator adalah operator sebagai pengganti if..else statement. Conditional operator menggukan simbol “?:”.

Leave a Reply

Your email address will not be published. Required fields are marked *