Minggu, 05 Januari 2020

Algoritma Percabangan (1,2, 3 kondisi, percabangan bersarang dan contoh kasus)

Algoritma percabangan adalah salah satu instruksi dalam algoritma yang digunakan untuk memberikan pilihan kepada program perintah mana yang harus diproses dan perintah mana yang harus dilewati sesuai dengan kondisi yang diberikan.

Algoritma percabangan terkadang diperlukan untuk kasus-kasus tertentu, karena pada kenyataannya alur pemrosesan kode program tidak selamanya berurutan dari baris instruksi satu ke baris instruksi lainnya, namun terkadang program perlu diatur agar bisa meloncat pada baris instruksi tertentu sesuai dengan kondisi yang terpenuhi.

Di dunia bahasa pemrograman atau algoritma, instruksi agar alur proses program bisa loncat menuju baris instruksi tertentu sesuai dengan kondisi yang diberikan, itu disebut dengan instruksi percabangan, pemilihan atau flow control.

Di dalam algoritma, instruksi percabangan dikategorikan menjadi beberapa jenis yaitu, percabangan 1 kondisi, percabangan 2 kondisi, percabangan 3 kondisi, percabangan lebih dari 3 kondisi dan percabangan bersarang.

Untuk lebih memahami logika dari algoritma percabangan, baik percabangan  1 kondisi, 2 kondisi, 3 kondisi maupun percabangan bersarang, maka di artikel kali saya akan coba kupas tuntas mengenai algoritma percabangan disertai dengan contoh kasus lengkap, baik kasus-kasus khusus, maupun contoh kasus dalam kehidupan sehari-hari.

Algoritma Percabangan (1,2, 3 kondisi, percabangan bersarang dan contoh kasus)

Algoritma percabangan biasanya menggunakan instruksi 

IF (Kondisi1) THEN
      pernyataan 1
ELSE IF (Kondisi 2) THEN
      pernyataan 2
ELSE IF (Kondisi 3) THEN
      pernyataan 3
ELSE
      pernyataan 4
END IF

Untuk Kondisi ke 1 cukup menggunakan instruksi IF (Kondisi 1) THEN, sedangkan untuk kondisi 2 dan seterusnya selain kondisi terakhir, maka menggunakan ELSE IF (Kondisi N) THEN, sementara untuk kondisi terakhir cukup menggunakan ELSE saja.

Memahami Apa itu IF THEN ELSE ?
IF dapat diartikan sebagai (JIKA), sedangkan THEN dapat anda artikan dengan sebutan MAKA, sedangkan ELSE dapa anda artiken sebagai (JIKA BUKAN / SELAIN ITU).

Memahami Apa itu Kondisi ?
Kondisi, umumnya akan membandingkan 2 buah operan dengan menggunakan operator aritmatika  seperti:
  • > (lebih besar)
  • < (lebih kecil)
  • >= (lebih besar atau sama dengan)
  • <= (lebih kecil atau sama dengan)
  • == (sama dengan)
  • <> (tidak sama dengan)

Contoh :
IF( nilai >=80) THEN
   write("LULUS")
ELSE
   weite("GAGAL")
END IF

Instruksi di atas jika diterjemahkan adalah, IF="jika nilai lebih besar atau sama dengan 80, maka cetak kata LULUS", ELSE="jika tidak (artinya nilainya lebih kecil dari 80) maka GAGAL".

Yang diberikan warna merah tebal itu adalah bagian kondisi, dengan operan nilai dan angka 80, sedangkan operator yang digunakan adalah >= (lebih besar atau sama dengan), harap diingat kondisi biasanya selalu membandingkan 2 buah operan dengan operator artimatika.

Semoga dengan uraian singkat di atas anda punya gambaran apa itu percabangan.


Algoritma percabangan 1 kondisi

Algoritma percabangan 1 kondisi adalah algoritma percabangan yang hanya menggunakan1 kondisi atau ketentuan saja, jika kondisi terpenuhi maka instruksi akan diproses, jika tidak terpenuhi maka akan dilewat atau diloncati.

Contoh:
Algoritma untuk menentukan usia balita, jika usia lebih kecil atau sama dengan 5 tahun maka balita.

Pseudocode:

program cek_usia
deklarasi
      var usia:integer
algoritma
    read(usia)

    IF(usia <5) THEN
          write("BALITA")
    ENDIF

Pada contoh di atas usia diinput oleh pengguna, usia kemudian dicek, jika usia lebih kecil dari lima maka cetak tulisan "BALITA" sedangkan jika tidak maka instruksi write("BALITA") akan dilewati.

Algoritma Percabangan 2 kondisi

Algoritma percabangan 2 kondisi adalah algoritma untuk memecahkan kasus yang hanya menggunakan 2 ketentuan saja.

Struktu percabangan 2 kondisi adalah sebagai berikut:

IF (Kondisi 1) THEN
      pernyataan 1
ELSE
      pernyataan 2
ENDIF

Contoh algoritma 2 kondisi:
Algoritma untuk menentukan Lulus dan Tidak Lulus nilai siswa, dengan ketentuan:
1. Jika nilai >=75 maka lulus,
2. Jika tidak  (nilai <75 maka tidak lulus)

Jawab:

program kelulusan
deklarasi
    var nilai:integer
algoritma:
    read(nilai)

    IF (nilai >=75) THEN
          write("LULUS")
    ELSE
          write("TIDAK LULUS")
    ENDIF


Atau Kasus di atas bisa juga ditulis seperti di bawah ini:

program kelulusan
deklarasi
    var nilai:integer
algoritma:
    read(nilai)

    IF (nilai <75) THEN
          write("TIDAK LULUS")
    ELSE
          write("LULUS")
    ENDIF


Untuk 2 kondisi, maka algoritma akan melibatkan instruksi percabangan IF (kondisi) THEN..... ELSE......, artinya jika 2 kondisi maka  instruksi  kata IF hanya 1 jumlahnya lainnya menggunakan kata ELSE.

Algoritma Percabangan 3 Kondisi

Algoritma tiga kondisi merupakan algoritma yang dapat digunakan untuk memecahkan kasus yang memiliki 3 kondisi.

Untuk algoritma 3 kondisi maka strukturnya adalah:

IF (kondisi 1) THEN
      pernyataan 1
ELSE IF(kondisi 2) THEN
      pernyataan 2
ELSE
      pernyataan 3.
ENDIF


Untuk kondisi pertama selalu menggunakan IF (Kondisi 1) THEN, sedangkan untuk kondisi kedua dan seterusnya selain kondisi terakhir, menggunakan ELSE IF (kondisi n) THEN, dan untuk kondisi terakhir menggunakan ELSE saja.

Contoh algoritma dengan 3 kondisi:
Algoritma untuk mencari nilai dalam bentuk abjad A,B atau C, dengan ketentuan
1. Jika nilai >80 maka nilai A
2. jika nilai >=70 dan <=80 maka B
3. selain itu (nilai <70) maka C

Jawab:
program cari_nilai
deklarasi
      var nilai:integer
algoritma
      read(nilai)
      IF(nilai>80)THEN
            write("A")
      ELSE IF(nilai>=70 AND nilai <=80) THEN
            write("B")
      ELSE
            write("C")
     ENDIF


Algoritma lebih dari 3 kondisi

Kondisi dalam algoritma bisa lebih dari 3 kondisi, strukturnya akan selalu sama, untuk kondisi pertama maka menggunakan IF (kondisi 1) ELSE...., sedangkan untuk kondisi ke 2 dan seterusnya selain kondisi terakhir yaitu menggunakan ELSE IF (kondisi n) THEN....., sedangkan untuk kondisi terakhir baru menggunaakn ELSE....saja.

Format untuk algoritma 3 kondisi atau lebih adalah sebagai berikut:

IF(Kondisi 1) THEN
     pernyataan 1
ELSE IF(Kondisi 2) THEN
     pernyataan 2
ELSE IF (kondisi 3) THEN
     pernyataan 3
ELSE IF(kondisi 4) THEN
     pernyataan 4
...
...
...
...
...
ELSE IF(kondisi N) THEN
     pernyataan N
ELSE
     pernyataan terakhir
ENDIF


Contoh algoritma lebih dari 3 kondisi sama halnya dengan 3 kondisi di atas, namun ketentuannya lebih dari 3. bisa 4, 5 dan seterusya.

c. Algoritma Percabangan Bersarang

Algoritma percabangan bersarang merupakan bentuk algoritma percabangan dimana pada setiap setiap pernyataan untuk kondisi IF di dalamnya terdapat Instruksi IF Lagi.

Algoritma percabangan bersarang artinya di dalam IF terdapat IF lagi.

Struktur algoritma percabangan  bersarang adalah sebagai berikut:

IF(Kondisi a) THEN
      IF(kondisi x)THEN
            pernyataan 1
      ELSE  IF
            pernyataan 2
      ENDIF
ELSE
     pernyataan b
ENDIF

Intinya algoritma percabangan disebut percabangan bersarang jika di dalam percabangan ada percabangan lagi, banyak yang menyebut juga dengan sebutan di dalam IF ada IF lagi.