Struktur Percabangan (Branching) dalam Algoritma Bahasa Pemrograman C/C++

Struktur Percabangan (Branching) dalam Algoritma Bahasa Pemrograman C/C++
Photo by Muha Ajjan / Unsplash

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 bernilai 1, maka program akan mencetak "Anda memilih opsi 1".
  • Jika pilihan bernilai 2, program mencetak "Anda memilih opsi 2".
  • Jika pilihan bernilai 3, program mencetak "Anda memilih opsi 3".
  • Jika tidak ada nilai yang cocok, program akan menjalankan bagian default.
Catatan: Jangan lupa menambahkan break; di akhir setiap case, 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.

Read more