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

Struktur Percabangan (Branching) dalam Algoritma Bahasa Pemrograman C/C++
Photo by Goran Ivos / Unsplash

Halo, sobat coder! Pernah bertanya-tanya bagaimana program bisa mengambil keputusan berdasarkan kondisi tertentu? Jawabannya ada pada struktur percabangan (branching). Dalam algoritma pemrograman, percabangan memungkinkan program untuk menjalankan bagian kode tertentu jika suatu kondisi terpenuhi. Di artikel ini, kita akan membahas struktur percabangan dalam bahasa pemrograman C dan C++, lengkap dengan contoh kode yang mudah dipahami.

Yuk, kita mulai!

Apa Itu Struktur Percabangan?

Struktur percabangan adalah blok kode yang memungkinkan program untuk membuat keputusan berdasarkan kondisi tertentu. Dengan percabangan, program bisa:

  • Menjalankan kode tertentu jika kondisi terpenuhi.
  • Mengabaikan kode tertentu jika kondisi tidak terpenuhi.
  • Memilih salah satu dari beberapa jalur eksekusi.

Jenis Struktur Percabangan di C/C++

Dalam bahasa C dan C++, ada beberapa jenis struktur percabangan yang sering digunakan:

1. Percabangan if

Percabangan if digunakan untuk mengeksekusi kode jika suatu kondisi bernilai benar (true).

Sintaks:

if (kondisi) {
    // Blok kode yang akan dijalankan jika kondisi benar
}

Contoh:

#include <iostream>
using namespace std;

int main() {
    int angka = 10;

    if (angka > 5) {
        cout << "Angka lebih besar dari 5." << endl;
    }

    return 0;
}

Output:
Angka lebih besar dari 5.

2. Percabangan if-else

Jika kondisi dalam if tidak terpenuhi, maka blok kode dalam else akan dijalankan.

Sintaks:

if (kondisi) {
    // Blok kode jika kondisi benar
} else {
    // Blok kode jika kondisi salah
}

Contoh:

#include <iostream>
using namespace std;

int main() {
    int angka = 3;

    if (angka > 5) {
        cout << "Angka lebih besar dari 5." << endl;
    } else {
        cout << "Angka lebih kecil atau sama dengan 5." << endl;
    }

    return 0;
}

Output:
Angka lebih kecil atau sama dengan 5.

3. Percabangan if-else if-else

Struktur ini digunakan jika ada lebih dari satu kondisi yang harus diperiksa.

Sintaks:

if (kondisi1) {
    // Blok kode jika kondisi1 benar
} else if (kondisi2) {
    // Blok kode jika kondisi2 benar
} else {
    // Blok kode jika semua kondisi salah
}

Contoh:

#include <iostream>
using namespace std;

int main() {
    int angka = 0;

    if (angka > 0) {
        cout << "Angka positif." << endl;
    } else if (angka < 0) {
        cout << "Angka negatif." << endl;
    } else {
        cout << "Angka nol." << endl;
    }

    return 0;
}

Output:
Angka nol.

4. Percabangan Bersarang (Nested if)

Kamu bisa menempatkan struktur if di dalam struktur if lain untuk membuat logika yang lebih kompleks.

Contoh:

#include <iostream>
using namespace std;

int main() {
    int angka = 8;

    if (angka > 5) {
        if (angka % 2 == 0) {
            cout << "Angka lebih besar dari 5 dan genap." << endl;
        } else {
            cout << "Angka lebih besar dari 5 dan ganjil." << endl;
        }
    }

    return 0;
}

Output:
Angka lebih besar dari 5 dan genap.

5. Percabangan switch

Struktur switch digunakan jika ada banyak kondisi yang harus diperiksa, terutama jika kondisinya adalah nilai tetap.

Sintaks:

switch (variabel) {
    case nilai1:
        // Blok kode jika variabel == nilai1
        break;
    case nilai2:
        // Blok kode jika variabel == nilai2
        break;
    default:
        // Blok kode jika tidak ada kondisi yang cocok
}

Contoh:

#include <iostream>
using namespace std;

int main() {
    int hari = 3;

    switch (hari) {
        case 1:
            cout << "Senin" << endl;
            break;
        case 2:
            cout << "Selasa" << endl;
            break;
        case 3:
            cout << "Rabu" << endl;
            break;
        default:
            cout << "Hari tidak valid." << endl;
    }

    return 0;
}

Output:
Rabu

Studi Kasus: Program Sederhana Menggunakan Percabangan

1. Menentukan Bilangan Positif, Negatif, atau Nol

#include <iostream>
using namespace std;

int main() {
    int angka;

    cout << "Masukkan sebuah angka: ";
    cin >> angka;

    if (angka > 0) {
        cout << "Angka positif." << endl;
    } else if (angka < 0) {
        cout << "Angka negatif." << endl;
    } else {
        cout << "Angka nol." << endl;
    }

    return 0;
}

2. Program Kalkulator Sederhana Menggunakan switch

#include <iostream>
using namespace std;

int main() {
    double angka1, angka2, hasil;
    char operasi;

    cout << "Masukkan angka pertama: ";
    cin >> angka1;

    cout << "Masukkan operator (+, -, *, /): ";
    cin >> operasi;

    cout << "Masukkan angka kedua: ";
    cin >> angka2;

    switch (operasi) {
        case '+':
            hasil = angka1 + angka2;
            break;
        case '-':
            hasil = angka1 - angka2;
            break;
        case '*':
            hasil = angka1 * angka2;
            break;
        case '/':
            if (angka2 != 0)
                hasil = angka1 / angka2;
            else {
                cout << "Error: Pembagian dengan nol!" << endl;
                return 1;
            }
            break;
        default:
            cout << "Operator tidak valid." << endl;
            return 1;
    }

    cout << "Hasil: " << hasil << endl;
    return 0;
}

Tips dan Trik Menggunakan Percabangan

  1. Gunakan switch untuk Pilihan Tetap
    Jika kamu memeriksa nilai tetap seperti angka atau karakter, gunakan switch karena lebih efisien daripada if-else.
  2. Perhatikan Kurung Kurawal ({})
    Jangan lupa menggunakan kurung kurawal untuk memisahkan blok kode agar lebih terorganisir.
  3. Hindari Percabangan Bersarang Terlalu Dalam
    Jika terlalu banyak percabangan bersarang, kode akan sulit dibaca. Pertimbangkan untuk memecah logika ke dalam fungsi.

Kesimpulan

Struktur percabangan adalah dasar dari logika pemrograman yang memungkinkan program untuk membuat keputusan. Dalam C/C++, kamu bisa menggunakan berbagai jenis percabangan seperti if, if-else, switch, atau bahkan kombinasi dari semuanya untuk membangun logika yang kompleks. Dengan latihan yang cukup, kamu akan semakin mahir memahami dan mengimplementasikan percabangan dalam programmu.

Read more