Struktur Percabangan (Branching) dalam Algoritma Bahasa Pemrograman C/C++
Dalam pemrograman, sering kali kita perlu membuat keputusan berdasarkan kondisi tertentu. Struktur percabangan (branching) memungkinkan program untuk mengambil jalur eksekusi yang berbeda tergantung pada kondisi yang diberikan. Dalam bahasa pemrograman C dan C++, struktur percabangan digunakan untuk mengontrol alur program dengan menggunakan pernyataan seperti if, if-else, switch-case, dan operator ternary.
Dengan memahami struktur percabangan, kita dapat membuat program yang lebih dinamis dan responsif terhadap input atau keadaan tertentu. Artikel ini akan membahas berbagai jenis struktur percabangan dalam C dan C++, beserta contoh penggunaannya.
1. Menggunakan if
dan if-else
1.1. Pernyataan if
Pernyataan if
digunakan untuk mengeksekusi sebuah blok kode jika kondisi yang diberikan bernilai true (benar).
Sintaks dasar if
:
#include <stdio.h>
int main() {
int angka = 10;
if (angka > 5) {
printf("Angka lebih besar dari 5\n");
}
return 0;
}
Penjelasan: Jika nilai angka
lebih besar dari 5, maka program akan mencetak "Angka lebih besar dari 5".
1.2. Pernyataan if-else
Jika kita ingin menambahkan blok eksekusi alternatif ketika kondisi if
tidak terpenuhi, kita bisa menggunakan if-else
.
Contoh penggunaan if-else
:
#include <stdio.h>
int main() {
int angka = 3;
if (angka > 5) {
printf("Angka lebih besar dari 5\n");
} else {
printf("Angka kurang dari atau sama dengan 5\n");
}
return 0;
}
Penjelasan: Jika angka
lebih dari 5, maka program akan mencetak "Angka lebih besar dari 5". Jika tidak, akan mencetak "Angka kurang dari atau sama dengan 5".
1.3. Pernyataan if-else if-else
Jika terdapat lebih dari dua kemungkinan kondisi, kita bisa menggunakan if-else if-else
untuk mengevaluasi beberapa kondisi bertingkat.
Contoh penggunaan if-else if-else
:
#include <stdio.h>
int main() {
int nilai = 75;
if (nilai >= 90) {
printf("Grade: A\n");
} else if (nilai >= 75) {
printf("Grade: B\n");
} else if (nilai >= 60) {
printf("Grade: C\n");
} else {
printf("Grade: D\n");
}
return 0;
}
Penjelasan: Program akan mengevaluasi kondisi satu per satu hingga menemukan kondisi yang sesuai, lalu menjalankan kode yang terkait dengan kondisi tersebut.
2. Menggunakan switch-case
switch-case
digunakan untuk menggantikan if-else if
yang memiliki banyak kondisi berdasarkan nilai variabel yang tetap. Ini membuat kode lebih rapi dan mudah dibaca.
Sintaks dasar switch-case
#include <stdio.h>
int main() {
int pilihan = 2;
switch (pilihan) {
case 1:
printf("Anda memilih opsi 1\n");
break;
case 2:
printf("Anda memilih opsi 2\n");
break;
case 3:
printf("Anda memilih opsi 3\n");
break;
default:
printf("Pilihan tidak tersedia\n");
}
return 0;
}
Penjelasan:
- Jika
pilihan
bernilai1
, maka program akan mencetak "Anda memilih opsi 1". - Jika
pilihan
bernilai2
, program mencetak "Anda memilih opsi 2". - Jika
pilihan
bernilai3
, program mencetak "Anda memilih opsi 3". - Jika tidak ada nilai yang cocok, program akan menjalankan bagian
default
.
Catatan: Jangan lupa menambahkanbreak;
di akhir setiapcase
, agar eksekusi tidak berlanjut ke case berikutnya.
3. Menggunakan Operator Ternary (?:
)
Operator ternary adalah bentuk ringkas dari if-else
yang sering digunakan untuk keputusan sederhana dalam satu baris kode.
Sintaks dasar operator ternary
variabel = (kondisi) ? nilai_jika_true : nilai_jika_false;
Contoh penggunaan
#include <stdio.h>
int main() {
int angka = 7;
printf("Angka adalah %s\n", (angka % 2 == 0) ? "genap" : "ganjil");
return 0;
}
Penjelasan:
- Jika
angka
adalah bilangan genap, maka akan mencetak "Angka adalah genap". - Jika bilangan ganjil, maka akan mencetak "Angka adalah ganjil".
Operator ternary sangat berguna untuk ekspresi sederhana tanpa harus menulis if-else
panjang.
Kapan Menggunakan if
, switch-case
, dan Operator Ternary?
Struktur Percabangan | Kapan Digunakan? |
---|---|
if-else |
Ketika kondisi bersifat fleksibel atau kompleks. |
switch-case |
Jika ada banyak nilai tetap yang perlu dibandingkan, misalnya menu pilihan. |
Operator Ternary | Untuk ekspresi sederhana yang hanya memiliki dua kemungkinan hasil. |
Kesimpulan
if-else
cocok untuk kondisi kompleks yang fleksibel.switch-case
lebih optimal untuk banyak kondisi tetap.- Operator ternary digunakan untuk ekspresi sederhana dalam satu baris.
- Menggunakan struktur percabangan yang tepat dapat membuat kode lebih efisien dan mudah dibaca.
Dengan memahami berbagai bentuk struktur percabangan dalam C/C++, kita bisa menulis kode yang lebih efisien dan lebih mudah dipelihara.