Struktur Percabangan (If-Else)

🤔 Pernahkah kamu bertanya bagaimana program mengambil keputusan?
Misalnya, bagaimana sistem menentukan apakah seorang wisatawan boleh masuk Kawah Ijen berdasarkan usia? Atau bagaimana aplikasi menghitung diskon tiket wisata berdasarkan jumlah pengunjung? Jawabannya adalah struktur percabangan — cara program membuat keputusan berdasarkan kondisi tertentu.

Pengertian Percabangan

Percabangan (branching) adalah struktur kontrol yang memungkinkan program mengambil keputusan berdasarkan kondisi yang dinilai benar atau salah. Dalam bahasa C, percabangan menggunakan pernyataan if, else if, dan else.

Analogi sederhana: Seperti penjaga gerbang Kawah Ijen yang memeriksa tiket. Jika tiket valid → boleh masuk. Jika tidak → ditolak. Program bekerja dengan logika serupa!

Sintaks If-Else dalam Bahasa C

// Contoh: Cek usia untuk masuk Kawah Ijen #include <stdio.h> int main() { int usia; printf("Masukkan usia: "); scanf("%d", &usia); if (usia >= 10 && usia <= 60) { printf("✅ Boleh masuk Kawah Ijen\n"); } else { printf("❌ Usia tidak memenuhi syarat\n"); } return 0; }

Jenis-Jenis Percabangan

1. If Sederhana
if (kondisi) { // Kode dijalankan jika kondisi BENAR }
2. If-Else
if (kondisi) { // Jika BENAR } else { // Jika SALAH }
3. If-Else-If (Bertingkat)
if (kondisi1) { // Jika kondisi1 BENAR } else if (kondisi2) { // Jika kondisi2 BENAR } else { // Jika semua SALAH }

Contoh Kasus: Sistem Tiket Wisata Banyuwangi

Berikut program untuk menghitung harga tiket berdasarkan kategori pengunjung:

// Program: Harga Tiket Wisata Kawah Ijen #include <stdio.h> int main() { int usia; int harga; printf("=== Tiket Wisata Kawah Ijen ===\n"); printf("Masukkan usia pengunjung: "); scanf("%d", &usia); if (usia < 5) { harga = 0; printf("Gratis untuk balita!\n"); } else if (usia >= 5 && usia <= 12) { harga = 15000; printf("Harga tiket: Rp %d\n", harga); } else if (usia >= 13 && usia <= 60) { harga = 30000; printf("Harga tiket: Rp %d\n", harga); } else { harga = 20000; printf("Diskon lansia: Rp %d\n", harga); } return 0; }
Penjelasan Program:
  1. Deklarasi variabel usia dan harga.
  2. Program meminta input usia pengunjung.
  3. Percabangan memeriksa kategori usia:
    • Usia < 5 tahun → Gratis
    • 5-12 tahun → Rp 15.000 (anak-anak)
    • 13-60 tahun → Rp 30.000 (dewasa)
    • > 60 tahun → Rp 20.000 (lansia, dapat diskon)
  4. Program menampilkan harga tiket sesuai kategori.
Live Code Simulator - Coba Sendiri!
📝 Kode Program (Bahasa C)
🖥️ Output Program
Klik "Jalankan Kode" untuk melihat hasil...
💡 Tips Penting: Gunakan operator logika && (AND) untuk menggabungkan kondisi. Contoh: usia >= 10 && usia <= 60 berarti usia antara 10 sampai 60. Perhatikan juga penggunaan else if untuk kondisi bertingkat!
📚 Konteks Lokal: Program percabangan sangat berguna untuk sistem informasi wisata Banyuwangi, seperti perhitungan harga tiket, diskon hotel, atau sistem antrian objek wisata. Coba modifikasi program di atas untuk kasus lain!

Kuis Modul 1: Percabangan

5 Soal • 100 Poin
Skor Anda
0
/ 100 poin
1 Operator logika AND dalam bahasa C ditulis dengan simbol?
2 Bagian kode yang dijalankan jika kondisi if bernilai salah adalah?
3 Dalam program tiket wisata, jika usia = 8, maka harga tiket adalah?
4 Struktur if-else-if digunakan untuk?
5 Fungsi printf dalam bahasa C digunakan untuk?

Struktur Perulangan (Looping)

🤔 Bagaimana cara program menghitung total pengunjung Kawah Ijen dalam sebulan?
Atau bagaimana sistem menampilkan daftar 100 objek wisata di Banyuwangi tanpa menulis kode 100 kali? Jawabannya adalah perulangan (looping) — cara program menjalankan kode berulang kali secara otomatis.

Pengertian Perulangan

Perulangan (looping) adalah struktur kontrol yang memungkinkan program menjalankan blok kode berulang kali selama kondisi tertentu terpenuhi. Dalam bahasa C, terdapat 3 jenis perulangan: for, while, dan do-while.

Analogi sederhana: Seperti menghitung jumlah tiket yang terjual setiap hari selama 30 hari. Daripada menulis kode 30 kali, kita cukup membuat perulangan yang berjalan 30 kali!

Jenis-Jenis Perulangan dalam Bahasa C

1. For Loop (Perulangan Pasti)
// Contoh: Menampilkan angka 1 sampai 5 for (int i = 1; i <= 5; i++) { printf("%d ", i); } // Output: 1 2 3 4 5
2. While Loop (Perulangan Bersyarat)
// Contoh: Menghitung mundur int i = 5; while (i > 0) { printf("%d ", i); i--; } // Output: 5 4 3 2 1
3. Do-While Loop (Minimal 1x Eksekusi)
// Contoh: Input validasi int pilihan; do { printf("Pilih menu (1-3): "); scanf("%d", &pilihan); } while (pilihan < 1 || pilihan > 3);

Contoh Kasus: Daftar Wisata Banyuwangi

Program untuk menampilkan daftar 5 objek wisata populer di Banyuwangi:

// Program: Daftar Wisata Banyuwangi #include <stdio.h> int main() { char wisata[5][50] = { "Kawah Ijen", "Pulau Merah", "Baluran National Park", "Pantai Pulau Tabuhan", "Air Terjun Lider" }; printf("=== 5 Wisata Populer Banyuwangi ===\n\n"); for (int i = 0; i < 5; i++) { printf("%d. %s\n", i+1, wisata[i]); } return 0; }
Penjelasan Program:
  1. Deklarasi array 2 dimensi untuk menyimpan 5 nama wisata.
  2. Perulangan for berjalan dari i=0 sampai i<5 (5 kali).
  3. Setiap iterasi menampilkan nomor dan nama wisata.
  4. Output: Daftar 5 wisata dengan nomor urut.
Live Code Simulator - Perulangan
📝 Kode Program (Bahasa C)
🖥️ Output Program
Klik "Jalankan Kode" untuk melihat hasil...
💡 Tips Penting: Gunakan for jika jumlah perulangan sudah diketahui. Gunakan while jika perulangan bergantung pada kondisi. Gunakan do-while jika kode harus dijalankan minimal 1 kali! Hati-hati dengan infinite loop (perulangan tak terbatas)!
📚 Konteks Lokal: Perulangan sangat berguna untuk menampilkan daftar data berulang, seperti daftar wisata, jadwal tour, atau antrian pengunjung objek wisata.

Kuis Modul 2: Perulangan

5 Soal • 100 Poin
Skor Anda
0
/ 100 poin
1 Perulangan yang paling tepat digunakan jika jumlah iterasi sudah diketahui adalah?
2 Perulangan yang minimal dijalankan 1 kali adalah?
3 Output dari: for(int i=1; i<=3; i++) printf("%d", i); adalah?
4 Untuk menghentikan perulangan secara paksa digunakan statement?
5 Infinite loop terjadi ketika?

Tipe Data & Operator

🤔 Mengapa penting memilih tipe data yang tepat?
Bayangkan menyimpan harga tiket wisata (angka desimal) dalam variabel integer. Hasilnya akan salah! Tipe data menentukan bagaimana data disimpan dan diolah dalam program.

Tipe Data Dasar dalam Bahasa C

123
🔢 int (Integer)

Angka bulat: int usia = 17;

3.14
📐 float/double

Angka desimal: float harga = 15000.50;

'A'
🔤 char

Karakter tunggal: char grade = 'A';

"Hi"
📝 string

Teks: char nama[] = "Budi";

Operator dalam Bahasa C

1. Operator Aritmatika
+ (Penjumlahan) - (Pengurangan) * (Perkalian) / (Pembagian) % (Modulus/Sisa) ++ (Increment) -- (Decrement)
2. Operator Perbandingan
== (Sama dengan) != (Tidak sama) > (Lebih besar) < (Lebih kecil) >= (>=) <= (<=)
3. Operator Logika
&& (AND) || (OR) ! (NOT)
Live Code Simulator - Tipe Data & Operator
📝 Kode Program (Bahasa C)
🖥️ Output Program
Klik "Jalankan Kode" untuk melihat hasil...

Kuis Modul 3: Tipe Data & Operator

5 Soal • 100 Poin
Skor Anda
0
/ 100 poin
1 Tipe data untuk menyimpan angka bulat adalah?
2 Operator untuk sisa pembagian adalah?
3 Hasil dari 15 % 4 adalah?
4 Operator == digunakan untuk?
5 Tipe data char digunakan untuk menyimpan?

Array & Struktur Data

🤔 Bagaimana menyimpan data 30 siswa kelas XI dalam satu variabel?
Array adalah solusi! Seperti lemari dengan banyak laci bernomor, array memungkinkan kita menyimpan banyak data dengan tipe yang sama dalam satu variabel.

Pengertian Array

Array adalah struktur data yang menyimpan kumpulan elemen dengan tipe data yang sama dalam satu variabel. Setiap elemen dapat diakses menggunakan index (dimulai dari 0).

Analogi sederhana: Seperti rak buku dengan 10 slot. Setiap slot bernomor 0-9 dan bisa diisi buku. Array bekerja dengan cara serupa!

Deklarasi dan Akses Array

// Deklarasi Array int nilai[5]; // Array dengan 5 elemen // Mengisi nilai nilai[0] = 80; nilai[1] = 85; nilai[2] = 90; // Mengakses nilai printf("%d", nilai[0]); // Output: 80
Live Code Simulator - Array
📝 Kode Program (Bahasa C)
🖥️ Output Program
Klik "Jalankan Kode" untuk melihat hasil...

Kuis Modul 4: Array

5 Soal • 100 Poin
Skor Anda
0
/ 100 poin
1 Index array dalam bahasa C dimulai dari?
2 Deklarasi array yang benar adalah?
3 Jika array memiliki 5 elemen, index terakhir adalah?
4 Array dapat menyimpan?
5 Untuk mengakses elemen array digunakan?

Latihan Integratif

🎯 Saatnya menguji pemahamanmu!
Modul ini berisi latihan soal interaktif yang menggabungkan semua materi: percabangan, perulangan, tipe data, dan array. Siapkan dirimu!

Mini Project: Program Kasir Wisata

Buat program kasir sederhana untuk menghitung total pembelian tiket wisata:

// Program: Kasir Tiket Wisata #include <stdio.h> int main() { int jumlah, harga = 30000; int total; printf("=== Kasir Tiket Wisata ===\n"); printf("Harga per tiket: Rp %d\n", harga); printf("Jumlah tiket: "); scanf("%d", &jumlah); total = harga * jumlah; if (jumlah >= 10) { total = total * 0.9; // Diskon 10% printf("✅ Dapat diskon 10%%!\n"); } printf("Total bayar: Rp %d\n", total); return 0; }
Live Code Simulator - Latihan Akhir
📝 Kode Program (Bahasa C)
🖥️ Output Program
Klik "Jalankan Kode" untuk melihat hasil...

Kuis Modul 5: Latihan Integratif

5 Soal • 100 Poin
Skor Anda
0
/ 100 poin
1 Struktur yang tepat untuk program kasir dengan diskon adalah?
2 Untuk menghitung total harga digunakan operator?
3 Jika beli 10 tiket dengan harga 30.000 dan diskon 10%, total adalah?
4 Fungsi scanf digunakan untuk?
5 Kombinasi materi yang digunakan dalam program kasir adalah?

🎉 Selamat!

Anda telah menyelesaikan semua modul Kelas XI dengan total skor 0/500