Home » Kuliah IT » Pemrograman » Apa itu Algoritma Percabangan?

Apa itu Algoritma Percabangan?

by Teddy
by Teddy

Pengertian algoritma pemrograman seleksi kondisi, atau disebut juga algoritma percabangan (atau disebut juga dengan flow control dan algoritma pemilihan) adalah salah satu jenis perintah dalam algoritma yang digunakan sebagai cara untuk memberitahukan program tentang perintah apa yang harus dijalankan, dimana perintah tersebut disesuaikan dengan beberapa kondisi tertentu. Fungsi algoritma percabangan ini pada adalah untuk memproses keputusan yang tepat dan sesuai dengan yang keinginan pengguna sistem berdasarkan beberapa kondisi yang terjadi pada sistem yang digunakan tersebut.

Dalam sebuah program atau sistem, ada saatnya sebuah instruksi atau perintah hanya bisa dilakukan jika memenuhi suatu kondisi atau persyaratan tertentu. Itu mengapa, algoritma percabangan ini bisa disebut juga dengan algoritma seleksi kondisi. Agar Anda paham maksudnya, kami berikan sebuah contoh. Misalkan, kita hendak menentukan apakah suatu bilangan termasuk bilangan genap atau bilangan ganjil. Nah, algoritmanya dapat kita jelaskan sebagai berikut:

  1. Mulai
  2. Masukkan suatu bilangan, misalkan bilangan X)
  3. Jika bilangan X habis dibagi dua, maka lanjut ke perintah keempat. Jika tidak lanjut ke perintah kelima.
  4. Tuliskan “X adalah bilangan genap”. Lanjut ke perintah keenam.
  5. Tuliskan “X adalah bilangan ganjil”
  6. Selesai

Dari algoritma di atas, kita bisa lihat bahwa ada dua kemungkinan perintah yang akan dikerjakan setelah perintah ketiga dikerjakan. Perintah pertama, jika bilangan X habis dibagi dua maka selanjutnya perintah keempat yang dikerjakan, kemudian lompat ke perintah keenam dan perintah kelima tidak dikerjakan. Perintah kedua, jika bilangan X tidak habis dibagi dua maka melompat ke perintah kelima dan perintah keempat tidak dikerjakan. Kedua perintah tersebut sama-sama berakhir pada perintah keenam, yang menyatakan bahwa proses algoritma telah selesai.

Bagaimana, sudah paham mengenai maksud dari algoritma percabangan ini? Nah, ternyata algoritma percabangan ini banyak macamnya. Namun, inti dari algoritma ini sama, yaitu suatu program atau sistem akan mengerjakan sebuah perintah yang disesuaikan dengan kondisi atau syarat tertentu. Apa saja macam-macam algoritma percabangan? Artikel kali ini akan mengulasnya untuk Anda. Berikut ini pembahasannya:

1. Percabangan untuk 1 kondisi

Pada percabangan jenis ini, hanya ada satu kondisi yang menjadi syarat untuk melakukan satu buah atau satu blok instruksi. Format umum dari algoritma percabangan dengan satu kondisi adalah sebagai berikut:

      IF kondisi THEN
      instruksi
      ENDIF

Arti dari format di atas, jika “kondisi” bernilai benar atau tercapai, maka aksi dikerjakan. Sedangkan jika bernilai salah, maka instruksi tidak dikerjakan dan proses langsung keluar dari percabangan dan kembali lagi ke kondisi awal.

Contoh dari penggunaan algoritma percabangan untuk satu kondisi adalah sebagai berikut:

       if A > B then
       write (A)
       end if

Instruksi di atas artinya instruksi akan menampilkan nilai A hanya jika kondisi “A lebih besar daripada B” bernilai benar. Jika bernilai salah, maka tidak ada aksi yang akan dilakukan atau proses langsung keluar dari percabangan (end if ).

Berikut ini kami berikan contoh beberapa contoh program algoritma percabangan untuk satu kondisi menggunakan macam-macam bahasa pemrograman. Berikut ini adalah contoh untuk program menggunakan bahasa Pascal  adalah sebagai berikut:

uses crt;
var
jeniskelamin:char;
begin
clrscr;
writeln(‘Jenis Kelamin : ’);
writeln(‘L unutk laki-laki, P untuk perempuan’);
writeln(‘Jenis kelamin anda: ’);readln(jeniskelamin);
if(jeniskelamin = ‘l’) then writeln(‘Laki-laki’);
if(jeniskelamin = ‘p’) then writeln(‘Perempuan’);
readkey;
end

Contoh lainnya dari program percabangan untuk satu kondisi pada suatu program menggunakan bahasa C++ adalah sebagai berikut:

#include <iostream.h>
int main (){
int nilai;
char a;
cout<<“Masukkan Nilai Anda:”;
cin>>nilai;
if (nilai>60){
cout<<“Selamat Anda Lulus!!”;
}
cin>>a;
return 0;
}

2. Percabangan untuk 2 kondisi

Pada percabangan jenis ini, ada dua kondisi yang menjadi syarat untuk dikerjakannya salah satu dari dua instruksi. Kondisi ini bisa bernilai benar atau salah. Bentuk umum dari percabangan dengan dua kondisi adalah sebagai berikut:

IF kondisi THEN
instruksi 1
ELSE
instruksi 2
ENDIF

Arti dari format di atas, jika “kondisi” bernilai benar maka instruksi 1 yang akan dikerjakan. Sedangkan jika bernilai salah), maka instruksi 2 yang akan dikerjakan. Perbedaannya dengan percabangan untuk satu kondisi terletak pada adanya dua instruksi untuk dua kondisi, yaitu kondisi bernilai benar dan kondisi bernilai salah.

3. Percabangan untuk 3 kondisi atau lebih

Algoritma percabangan untuk tiga kondisi atau lebih adalah bentuk pengembangan dari dua macam algoritma percabangan yang telah dibahas sebelumnya. Karena itu, percabangan jenis ini akan memiliki banyak variasi. Secara umum, format percabangannya dapat dituliskan sebagai berikut :

IF kondisi THEN
instruksi 1
ELSE IF kondisi 2 THEN
instruksi 2
ELSE
instruksi 3
ENDIF

Maksud dari algoritma di atas, instruksi 1 akan dikerjakan jika “kondisi 1” bernilai benar. Jika bernilai salah, pemeriksan dilanjutkan ke “kondisi 2”. Jika “kondisi 2” bernilai benar, maka instruksi 2 dikerjakan. Jika tidak, pemeriksaan dilanjutkan pada kondisi-kondisi lainnya. Pemeriksaan ini akan terus dilakukan terhadap semua kondisi yang ada. Jika tidak ada satu pun kondisi yang bernilai benar maka pernyataan yang dikerjakan adalah instruksi 3 atau instruksi (n+1) pada percabangan lebih dari 3 kondisi.

4. Percabangan “Case of….”

Selain menggunakan format yang dijelaskan pada poin 3, percabangan 3 kondisi atau lebih bisa juga menggunakan format “Case Of”. Format ini memiliki kegunaan yang sama, tetapi format ini digunakan untuk memeriksa data yang bertipe karakter atau integer. Secara umum format penulisannya adalah sebagai berikut:

switch (ekspresi) {
case kontanta-1:
instruksi 1 break;
case konstanta-2:
instruksi 2 break;
default:
instruksi 3
}

Contoh penerapan percabangan Case Of dalam sebuah program menggunakan bahasa Pascal adalah sebagai berikut:

uses wincrt;
var x : integer;
begin
write (‘Masukkan sebuah nilai [0…3] : ‘);
readln (x);
Case (x) of
0 : Writeln(‘X bernilai 0’);
1 : Writeln(‘x bernilai 1’);
2 : Writeln(‘X bernilai 2’);
3 : Writeln(‘X bernilai 3’);
else
Writeln(‘X tidak bernilai 0, 1, 2, ataupun 3’);
end;
end.

Contoh program percabangan Case Of menggunakan bahasa C++ :

void main() {
int nHari;
cout << “Masukkan No Hari [1..7] : “;
cin >> nHari;
cout << “Ini adalah hari “;
switch (nHari) {
case 1:
cout << “Ahad”;
break;
case 2:
cout << “Senin”;
break;
case 3:
cout << “Selasa”;
break;
case 4:
cout << “Rabu”;
break;
case 5:
cout << “Kamis”;
break;
default:
cout << “Jumat”;
}
getch();
}

5. Percabangan bersarang

Percabangan bersarang adalah instruksi yang terdiri dari adanya percabangan yang lain di dalam percabangan, atau di dalam percabangan ada percabangan lagi. Format penulisan untuk percabangan bersarang adalah sebagai berikut:

If <kondisi1> then
if <kondisi2> then
Instruksi1
Else
Instruksi2
Else
If <kondisi3>
Instruksi3
Else
Instruksi4
EndIf

Jika kondisi berjumlah lebih dari 3 kondisi, polanya tetap sama. Untuk kondisi ke 2 dan seterusnya, penulisannya menggunakan “ELSE IF kondisi THEN”, sedangkan untuk kondisi terakhir cukup menggunakan ELSE saja.

Mulanya, “kondisi1” dicek nilai kebenarannya. Jika benar, maka dicek nilai kebenaran “kondisi2”. Jika “kondisi2” benar, maka dikerjakan Instruksi1. Jika tidak, dikerjakan Instruksi2.

Sedangkan jika “kondisi1” tidak benar, maka akan dicek nilai kebenarannya. Jika “kondisi3” bernilai benar, maka dikerjakan Instruksi3. Jika tidak, maka akan dikerjakan Instruksi4.

Inilah salah satu contoh program percabangan bersarang (Nested If) menggunakan bahasa Pascal :

uses wincrt;
var x, y, z : real;
begin
write (‘Masukkan bilangan pertama : ‘);
readln (x);
write (‘Masukkan bilangan kedua : ‘);
readln (y);
write (‘Masukkan bilangan ketiga : ‘);
readln (z);
if x > y then
if x > z then
write (‘Bilangan terbesar : ‘,x:5:2)
else
write (‘Bilangan terbesar : ‘,z:5:2)
else
if y > z then
write (‘Bilangan terbesar :’,y:5:2)
else
write (‘Bilangan terbesar : ‘,z:5:2);
end.

Dan di bawah ini adalah satu contoh program percabangan bersarang lainnya menggunakan bahasa C++ :

#include <iostream.h>
void main() {
int A, B, C;
cout << “masukan angka 1 =  “;
cin >> A;
cout << “masukan angka 2 =  “;
cin >> B;
cout << “masukan angka 3 =  “;
cin >> C;
if(A<B){
if(A<C)
cout<< “angka terkecil adalah : ” << A;
else
cout<< “angka terkecil adalah : ” << C;
}
else if(B<C)
cout<< “angka terkecil adalah : ” << B;
else
cout<< “angka terkecil adalah : ” << C;
}

Setelah Anda mempelajari algoritma percabangan dalam artikel ini, Anda selanjutnya dapat mengembangkannya ke dalam bentuk flowchart. Apa fungsi flowchart dalam pemrograman? Simak artikelnya di website kami ini. Sekian artikel kami kali ini mengenai algoritma percabangan.

Eitss, Anda juga harus mengerti dahulu pengertian algoritma, flowchart, dan pseudocode dalam mempelajari pemrograman. Anda juga bisa mengetahui semuanya di website kami ini. Semoga artikel kami ini bermanfaat bagi Anda untuk mengenal algoritma percabangan.

You may also like