🔀 Conditional Statements

Mengambil keputusan dalam program: if, if-else, switch, dan operator ternary.

Conditional statement (pernyataan kondisional) memungkinkan program mengambil keputusan: menjalankan blok kode tertentu hanya jika suatu kondisi bernilai benar (true / bukan nol). Kondisi dalam C selalu menghasilkan 1 (benar) atau 0 (salah).

📌 1. Statement if

Bentuk paling sederhana: blok kode hanya dijalankan jika kondisinya benar.

if (kondisi) { // Blok kode dijalankan HANYA jika kondisi benar }
⚠️ Jika kondisi salah, blok kode dilewati dan program lanjut ke statement setelahnya.
Output:

📌 2. Statement if-else

Memberikan dua pilihan: jika kondisi benar jalankan blok pertama, jika salah jalankan blok else.

if (kondisi) { // Jalankan jika kondisi BENAR } else { // Jalankan jika kondisi SALAH }
Output:

📌 3. if - else if - else (Bertingkat)

Untuk lebih dari dua pilihan. Kondisi dicek berurutan dari atas; begitu ada yang benar, sisanya dilewati.

if (kondisi1) { // Blok 1 } else if (kondisi2) { // Blok 2 } else if (kondisi3) { // Blok 3 } else { // Blok default (jika semua salah) }
Output:

📌 4. Nested if (if di dalam if)

Kondisi di dalam kondisi — berguna untuk pengecekan berlapis.

Output:

📌 5. Statement switch

Alternatif rapi untuk if-else if panjang saat membandingkan satu variabel terhadap banyak nilai tetap.

switch (variabel) { case nilai1: // Blok 1 break; case nilai2: // Blok 2 break; default: // Blok jika tidak ada yang cocok }
⚠️ Wajib break! Tanpa break, eksekusi akan "jatuh" (fall-through) ke case berikutnya — ini bug klasik.
Output:

📌 6. Operator Ternary ?:

if-else dalam satu baris — cocok untuk memilih salah satu dari dua nilai.

hasil = (kondisi) ? nilai_jika_benar : nilai_jika_salah;
Output:

⚖️ Kapan Pakai yang Mana?

if / if-else

Kondisi rentang atau perbandingan bebas: >, <, ==, gabungan logika.

switch

Satu variabel dibandingkan dengan banyak nilai tetap (int/char). Lebih rapi & mudah dibaca.

Ternary

Hanya 2 pilihan dan hasilnya berupa nilai — hemat satu baris.


🧠 Latihan

Buatlah program yang:

  1. Menginputkan nilai (0-100).
  2. Menampilkan grade menggunakan if-else if (A: 90-100, B: 80-89, C: 70-79, D: 60-69, E: <60).
  3. Lalu ubah logika grade-nya menggunakan switch (petunjuk: bagi nilai dengan 10).
  4. Tambahkan pengecekan: jika nilai di luar 0-100, tampilkan "Nilai tidak valid".