Percabangan & Pengkondisian
Decision Making Control Flow di Python
Pelajari cara membuat program cerdas yang mampu mengambil keputusan logis berdasarkan kondisi:
pernyataan if, if-else, if-elif-else, dan percabangan bersarang (nested if)
disertai simulator flowchart, kalkulator kasir tiket bus, dan slip gaji karyawan interaktif.
Apa Itu Percabangan & Indentasi Python?
Pengambilan keputusan (*decision making*) adalah kunci bagaimana komputer merespons berbagai skenario yang berbeda.
Definisi Percabangan (*Conditional Statement*)
Percabangan atau Pengkondisian adalah cara yang digunakan untuk mengambil keputusan berdasarkan kondisi tertentu.
Percabangan mengevaluasi kondisi atau ekspresi logika yang menghasilkan nilai boolean (True atau False).
Pernyataan di dalam blok kondisi tersebut akan dieksekusi oleh Python.
Blok kode tersebut dilewati, atau sistem akan mengeksekusi blok cabang alternatif (else).
Aturan Sakral: Indentasi Sebagai Penentu Blok Kode
Tidak seperti bahasa C, C++, Java, atau JavaScript yang menggunakan kurung kurawal { } untuk membungkus blok kode,
Python menggunakan indentasi (spasi menjorok ke kanan, standar 4 spasi) setelah tanda titik dua :.
# Tanda titik dua (:) mengawali blok kondisi
if 10 > 5:
# Indentasi 4 spasi (Menjorok ke kanan)
print("Statement ini berada di dalam blok IF dan akan dieksekusi!")
# Baris tanpa indentasi berarti berada di LUAR blok IF
print("Statement ini akan SELALU dieksekusi karena berada di luar percabangan.")
Pernyataan Percabangan Tunggal: if
Digunakan ketika Anda hanya memiliki 1 kondisi aksi yang ingin dijalankan jika syarat terpenuhi.
Sintaks & Cara Kerja
Jika kondisi bernilai True, maka baris instruksi di dalamnya dijalankan. Jika False, program langsung melompat ke baris berikutnya.
if tes_kondisi:
# statement dijalankan jika True
perintah_1()
perintah_2()
Contoh Kode Nyata
angka = 5
if angka > 0:
print(angka, "adalah bilangan positif lebih besar dari 0")
# Output:
# 5 adalah bilangan positif lebih besar dari 0
Live Test Percabangan Tunggal
Pernyataan Percabangan Ganda: if ... else
Menyediakan dua alternatif alur: blok if jika kondisi terpenuhi, dan blok else jika tidak.
Flowchart Logika If-Else
Contoh Implementasi Python
nilai = 74
print("Nilai anda adalah:", nilai)
if nilai >= 75:
print("Selamat, anda lulus!")
else:
print("Maaf, anda tidak lulus.")
# Contoh cek bilangan genap / ganjil:
bilangan = 17
if bilangan % 2 == 0:
print(bilangan, "adalah Bilangan Genap")
else:
print(bilangan, "adalah Bilangan Ganjil")
Pernyataan Percabangan Majemuk: if ... elif ... else
Digunakan untuk menguji lebih dari 2 kondisi secara berurutan (*cascading conditional statement*).
Kata kunci elif merupakan singkatan dari "else if". Python akan mengevaluasi setiap kondisi dari atas ke bawah.
Segera setelah satu kondisi bernilai True, blok tersebut dieksekusi dan Python akan langsung melompati seluruh elif/else berikutnya!
Kalkulator Predikat Nilai Mahasiswa
- Nilai ≥ 88 → Predikat A (Istimewa)
- Nilai ≥ 75 → Predikat B (Baik)
- Nilai ≥ 60 → Predikat C (Cukup)
- Nilai ≥ 40 → Predikat D (Kurang)
- Lainnya → Predikat E (Gagal)
Ahmad Faruq
Predikat B • Lulus Memuaskan
Nilai 85 memenuhi syarat kondisi (nilai ≥ 75).
# Program Penentuan Grade Nilai Mahasiswa
nilai = int(input("Masukkan nilai mahasiswa: "))
if nilai >= 88:
print("Predikat A")
elif nilai >= 75:
print("Predikat B")
elif nilai >= 60:
print("Predikat C")
elif nilai >= 40:
print("Predikat D")
else:
print("Predikat E")
Percabangan Bersarang (*Nested If*)
Meletakkan blok percabangan di dalam blok percabangan lainnya untuk validasi bertingkat.
Nested If sangat sering digunakan ketika keputusan kedua hanya boleh diperiksa jika keputusan pertama sudah benar. Misalnya: Sistem otentikasi login (Periksa Username dulu → jika benar baru periksa Password).
username = input("Username: ")
password = input("Password: ")
# Percabangan Tingkat 1 (Cek Username)
if username == "admin":
# Percabangan Tingkat 2 (Bersarang di dalam if username)
if password == "rahasia123":
print("Login Berhasil! Selamat datang, Admin.")
else:
print("Password salah! Akses ditolak.")
else:
print("Username tidak terdaftar di sistem!")
Studi Kasus 1: Kasir Tiket Bus Pariwisata "XYZ"
Penerapan percabangan majemuk penentuan jurusan kota dan diskon kuantitas tiket.
Form Pemesanan Tiket
Struk Cetak Pembayaran
Tiket Resmi Perjalanan Antar Kota
Studi Kasus 2: Program Hitung Gaji Karyawan
Kalkulasi gaji pokok, tunjangan jabatan (Golongan 1/2/3), tunjangan pendidikan (SMA/D1/D3/S1), dan honor lembur.
Data Karyawan
Rincian Slip Gaji Karyawan
SLIP GAJI KARYAWAN
Karyawan: Muhammad Fikri
Live Python Runner & Code Playground
Jalankan dan uji berbagai program logika percabangan secara langsung di browser Anda.
Terminal Output:
Kuis Interaktif: Logika Percabangan Python
Uji ketelitian dan pemahaman logika pengkondisian Anda sebelum melangkah ke materi Perulangan.
Loading pertanyaan kuis...
Rangkuman & Roadmap Pertemuan 5
Poin Penting Pertemuan 4
- Percabangan
ifmengevaluasi ekspresi boolean (True/False). - Indentasi 4 spasi wajib digunakan setelah tanda titik dua
:untuk mendefinisikan isi blok kode. if-elsemenyediakan 2 cabang jalur eksekusi yang saling berlawanan.if-elif-elsemenguji multi-kondisi dari atas ke bawah dan berhenti pada kondisi pertama yangTrue.- Nested If (percabangan bersarang) digunakan untuk keputusan logis bertingkat.
Materi Pertemuan 5: Perulangan (Loops)
Pada pertemuan berikutnya, kita akan mempelajari otomatisasi tugas berulang:
- Perulangan
for: Iterasi koleksi data dan fungsirange(). - Perulangan
while: Pengulangan kode selama kondisi bernilai True. - Control Statement: Penggunaan
break,continue, danpass. - Studi Kasus Akbar: Sistem Kasir Gerobak Fried Chicken.