Dalam dunia pemrograman, sebuah program tidak selalu berjalan secara linier dari awal hingga akhir. Seringkali, program perlu membuat keputusan berdasarkan kondisi tertentu. Di sinilah konsep algoritma percabangan memainkan peran krusial. Percabangan adalah struktur kontrol yang memungkinkan program untuk mengeksekusi blok kode yang berbeda tergantung pada apakah suatu kondisi bernilai benar (true) atau salah (false).
Bayangkan Anda sedang berjalan dan menemui persimpangan jalan. Anda perlu memutuskan jalan mana yang akan diambil berdasarkan petunjuk arah atau rambu yang ada. Algoritma percabangan bekerja dengan cara yang serupa. Ia memberikan "otak" bagi program Anda untuk menavigasi melalui berbagai kemungkinan dan memilih jalur eksekusi yang paling sesuai.
Ada beberapa bentuk algoritma percabangan yang umum digunakan dalam pemrograman:
Ini adalah bentuk paling sederhana. Blok kode hanya akan dieksekusi jika kondisi bernilai benar. Jika kondisi salah, blok kode tersebut akan dilewati.
jika (kondisi_benar) {
// Lakukan sesuatu
}
Percabangan ganda menyediakan dua jalur eksekusi. Satu blok kode dieksekusi jika kondisi benar, dan blok kode lain dieksekusi jika kondisi salah.
jika (kondisi_benar) {
// Lakukan sesuatu jika benar
} lain {
// Lakukan sesuatu jika salah
}
Bentuk ini memungkinkan pengecekan beberapa kondisi secara berurutan. Jika kondisi pertama salah, program akan melanjutkan ke kondisi berikutnya, dan seterusnya. Blok else terakhir akan dieksekusi jika semua kondisi sebelumnya bernilai salah.
jika (kondisi_pertama) {
// Lakukan sesuatu jika kondisi pertama benar
} lain jika (kondisi_kedua) {
// Lakukan sesuatu jika kondisi kedua benar
} lain jika (kondisi_ketiga) {
// Lakukan sesuatu jika kondisi ketiga benar
} lain {
// Lakukan sesuatu jika semua kondisi di atas salah
}
Ini adalah percabangan yang berada di dalam percabangan lain. Anda bisa menempatkan pernyataan if di dalam blok if atau else.
jika (kondisi_luar) {
// Lakukan sesuatu jika kondisi luar benar
jika (kondisi_dalam) {
// Lakukan sesuatu jika kondisi dalam juga benar
} lain {
// Lakukan sesuatu jika kondisi dalam salah
}
} lain {
// Lakukan sesuatu jika kondisi luar salah
}
Ini adalah alternatif yang lebih efisien untuk percabangan majemuk ketika Anda ingin membandingkan satu variabel dengan banyak nilai konstanta yang berbeda. Pernyataan switch akan mengevaluasi sebuah ekspresi, lalu mencocokkannya dengan nilai-nilai pada blok case.
sesuai (variabel) {
kasus nilai1:
// Lakukan sesuatu untuk nilai1
hentikan;
kasus nilai2:
// Lakukan sesuatu untuk nilai2
hentikan;
kasus nilai3:
// Lakukan sesuatu untuk nilai3
hentikan;
default:
// Lakukan sesuatu jika tidak ada case yang cocok
}
Algoritma percabangan sangat fundamental dan diterapkan dalam berbagai skenario, antara lain:
Penggunaan algoritma percabangan yang efektif dapat membuat program Anda lebih cerdas, fleksibel, dan mampu menangani berbagai situasi yang mungkin terjadi. Memahami berbagai jenis percabangan dan kapan menggunakannya adalah langkah penting dalam menguasai seni pemrograman.