Pernyataan Percabangan/Decision biasa juga disebut dengan Pilihan atau Penyeleksian, berfungsi untuk memecahkan persoalan dan mengambil satu keputusan sesuai kondisi yang sedang dialami program. Pernyataan tunggal atau pernyataan majemuk akan dieksekusi jika kondisi kebutuhan tersebut terpenuhi.
Alur pembacaan program akan mengalir dari atas ke bawah, akan dieksekusi oleh CPU satu demi satu. Ketika CPU menemukan pernyataan penyeleksian, sebelum CPU memilih dan mengekseskusi pilihan yang ada, program akan memeriksa kondisi dari program saat itu juga. Jika salah satu kondisi dari pilihan pernyataan penyeleksian sesuai dengan kondisi program maka pilihan tersebutlah yang akan diekseskusi.
Untuk ekspresi dari kondisi (hasil) merupakan bilangan Boolean atau berupa sebuah ekspresi yang menghasilkan bilangan Boolean, 1 (True) atau 0 (False), jika kondisi penyeleksian bernilai true maka akan menjalankan pilihan yang ada dan jika semua pilihan bernilai 0 (false) maka akan diabaikan atau memilih pilihan cadangan (else).
Pada flow chart, logika “jika…maka” digambarkan dalam bentuk cabang.
Selain percabangan, struktur ini juga disebut control flow, decision, struktur kondisi, Struktur if, dan sebagainya. Percabangan akan membuat program berpikir dan menentukan tindakan sesuai dengan logika/kondisi yang kita berikan. Untuk menunjang tutorial ini, pastikan sudah memahami tentang operator relasi dan logika.
Struktur Percabangan If
Percabangan If digunakan saat terdapat satu pilihan keputusan. Misalkan kalau kita tidak lulus dalam ujian, maka kita ikut remedial, sedangkan kalau lulus tidak perlu ikut remedial.
Maka kita bisa membuat kodenya seperti ini :
if lulus == "tidak": print("Anda harus ikut remidial")
Jika lulus == “tidak” maka cetak text “Anda harus ikut remidial“
Kita menggunakan operator relasi sama dengan (==) untuk membandingkan isi variabel lulus, sedangkan tanda titik-dua (:) adalah tanda untuk memulai blok kode if.
Penulisan blok if, harus diberikan indentasi tab atau spasi 2x.
Contoh penulisan yang salah :
if lulus == "tidak": print("Anda harus ikut remidial")
Contoh penulisan yang benar :
if lulus == "tidak": print("Anda harus ikut remidial")
Contoh Program :
lulus = input("Apakah kamu lulus? [ya/tidak]: ") if lulus == "tidak": print("Anda harus ikut remedial")
Ketika dieksekusi, lalu masukan jawaban “ya” atau “tidak”, perhatikanlah hasil outputnya dan hasilnya seperti berikut :
Contoh lagi :
Untuk lebih memahaminya silahkan coba contoh kasus berikut ini :
# program untuk mengecek bonus dan diskon total_belanja = int(input("Total belanja: Rp ")) # jumlah yang harus dibayar adalah berapa total belanjaannya # tapi kalau dapat diskon akan berkurang bayar = total_belanja # jika dia belanja di atas 100rb maka berikan bonus dan diskon if(total_belanja > 100000): print("Anda mendapatkan bonus minuman dingin") print("dan diskon 5%") # hitung diskonnya (5%) diskon = total_belanja * 5/100 bayar = total_belanja - diskon # cetak struk print("Total yang harus dibayar: Rp %s" % bayar) print("Terima kasih sudah berbelanja") print("Datang lagi yaa...")
Hasilnya :
Struktur Percabangan If-Else
Percabangan If-Else digunakan saat terdapat dua pilihan keputusan. Misalnya, jika umur diatas atau samadengan 18 tahun boleh membuat SIM, sedangkan dibawah itu belum boleh.
Kita terjemahkan ke dalam sintak Python seperti berikut :
umur = int(input("Berapa umur anda : ")) if umur >= 18: print("Anda boleh membuat SIM") else: print("Anda belum boleh membuat SIM")
Selain blok If, terdapat juga blok Else yang akan dieksekusi apabila kondisi umur < 18 salah (False). Hasil eksekusi dari kode di atas adalah sebagai berikut :
Struktur Percabangan Elif
Percabangan If/Elif/Else digunakan apabila terdapat lebih dari dua pilihan keputusan.
if hujan: diam di rumah elif panas: Jalan-jalan else: Ngapain ya...?
Kata kunci elif artinya Else if, fungsinya untuk membuat kondisi/logika tambahan apabila kondisi pertama salah.
Contoh Program:
Misalkan kita akan membuat program untuk menentukan grade nilai dengan flow chart sebagai berikut :
Maka kode programnya bisa kita buat seperti ini :
nilai = int(input("Inputkan nilaimu: ")) if nilai >= 90: grade = "A" elif nilai >= 80: grade = "B+" elif nilai >= 70: grade = "B" elif nilai >= 60: grade = "C+" elif nilai >= 50: grade = "C" elif nilai >= 40: grade = "D" else: grade = "E" print("Grade : %s" % grade)
Maka hasilnya :
Demikian tutorial percabangan (decision) pada Bahasa Pemrograman Python, jika ada pertanyaan silahkan tuliskna di kolom komentar, semoga bermanfaat.
Be the first to comment