Seleksi merupakan digunakan untuk mengambil suatu keputusan ketika program kita memiliki lebih dari dua statement/pernyataan atau memiliki dari dua kondisi tertentu. seleksi juga salah satu logika dasar dari pemrograman dimana untuk logika seleksi ini terdiri dari :
Setelah sebelumnya kita belajar Python dasar mengenai beberapa operator Python pada Chapter 3. Sekarang kita akan melanjutkan membahas tentang Seleksi Kondisi Python.
Belajar Python Dasar : Chapter 4 “Seleksi Kondisi Python”
Kondisi If Python
Pengambilan keputusan (kondisi if) digunakan untuk mengantisipasi kondisi yang terjadi saat jalanya program. Dan menentukan tindakan apa yang akan diambil sesuai dengan kondisi.
Pada python ada beberapa statement/kondisi diantaranya adalah if, else dan elif. Kondisi if digunakan untuk mengeksekusi kode jika kondisi bernilai benar. Jika kondisi bernilai salah maka statement/kondisi if tidak akan di-eksekusi.
Dibawah ini adalah contoh penggunaan kondisi if pada Python:
#Kondisi if adalah kondisi yang akan dieksekusi oleh program jika bernilai benar atau TRUE nilai = 9 #jika kondisi benar/TRUE maka program akan mengeksekusi perintah dibawahnya if(nilai > 7): print("Selamat Anda Lulus") #jika kondisi salah/FALSE maka program tidak akan mengeksekusi perintah dibawahnya if(nilai > 10): print("Selamat Anda Lulus")
Dari contoh diatas, jika program dijalankan maka akan mencetak string “Selamat Anda Lulus Ujian” sebanyak 1 kali. Yaitu pada if pertama. Di if kedua statement bernilai salah, jadi perintah print(“Selamat Anda Lulus”) tidak akan dieksekusi.
Contoh untuk IF ELIF ELSE, di Python sintak ini bisa ditulis dengan lebih singkat yaitu elif:
#! /usr/bin/python varAngka = 123 if varAngka==200: print "Nilai : TRUE" print varAngka elif varAngka==123: print "Nilai : TRUE" print varAngka else: print "Nilai : FALSE" print varAngka
Contoh untuk NESTED IF :
#! /usr/bin/python varAngka = 89 if varAngka<100: print "Nilai : TRUE" print varAngka if varAngka > 80: print "Nilai : A" elif varAngka > 60: print "Nilai : B" elif varAngka > 40: print "Nilai : C" elif varAngka > 20: print "Nilai : D" else: print "Nilai : E" else: print "Nilai : FALSE" print varAngka
Statemen IF juga bisa ditulis dalam 1 baris saja, misalnya seperti ini:
if varAngka1: print "Nilai : TRUE"Dari sintak percabangan sudah bisa kita lihat perbedaan antara python dengan bahasa pemrograman yang lain. Sintak ditulis dengan lebih ringkas. Percabangan atau pengkondisian ini adalah hal dasar dalam pemrograman, kita pasti akan menggunakannya.
Selanjutnya kita bisa belajar lagi mengenai perulangan python menggunakan for dan while di Chapter 5.
Buat yang belum pernah kuliah atau belajar tentang algoritme dan flowchart, mungkin ini istilah yang baru pertama kamu dengar.
Isitilah ini sebenarnya untuk menggambarkan alur program yang bercabang.
Pada flow chart, logika “jika…maka” digambarkan dalam bentuk cabang.
Karena itu, ini disebut percabangan.
Selain percabangan, struktur ini juga disebut control flow, decision, struktur kondisi, Struktur if, dsb.
Percabangan akan mampu membuat program berpikir dan menentukan tindakan sesuai dengan logika/kondisi yang kita berikan.
Pada kesempatan ini, kita akan belajar struktur percabangan pada python. Mulai dari yang paling dasar hingga yang kompleks.
Pastikan sebelumnya sudah paham tentang operator relasi dan logika.
Mari kita mulai…
Struktur Percabangan If
Percabangan If digunakan saat terdapat satu pilihan keputusan.
Misalkan, kalau kita tidak lulus dalam ujian, maka kita ikut remidi. Sedangkan kalau lulus tidak perlu ikut remidi.
Maka kita bisa membuat kode-nya seperti ini:
if lulus == "tidak": print("kamu harus ikut remidi")
“Jika lulus == "tidak" maka cetak teks "kamu harus ikut remidi"”
Kita menggunakan operator relasi sama dengan (if lulus == "tidak": print("Kamu harus ikut remidi")0) untuk membandingkan isi variabel if lulus == "tidak": print("Kamu harus ikut remidi")1. Sedangkan tanda titik-dua (if lulus == "tidak": print("Kamu harus ikut remidi")2) adalah tanda untuk memulai blok kode If.
Penulisan blok If, harus diberikan indentasi if lulus == "tidak": print("Kamu harus ikut remidi")3 atau if lulus == "tidak": print("Kamu harus ikut remidi")4 2x.
❌ Contoh penulisan yang salah:
if lulus == "tidak": print("Kamu harus ikut remidi")
✔️ Contoh penulisan yang benar:
if lulus == "tidak": print("kamu harus ikut remidi")
Contoh Program:
Sekarang, mari kita praktek…
Buatlah program berikut:
# lulus.py lulus = raw_input("Apakah kamu lulus? [ya/tidak]: ") if lulus == "tidak": print("Kamu harus ikut ujian")
Silahkan dieksekusi, lalu masukan jawaban “ya” atau “tidak”. Perhatikanlah hasil outputnya.
Contoh lagi:
Biar pemahamannya semakin mantap, silahkan coba contoh kasus berikut ini.
# program untuk mengecek bonus dan diskon # file: bonus.py total_belanja = 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("Kamu mendapatkan bonus minuman dingin") print("dan diskon 5%") # hitung diskonnya diskon = total_belanja * 5/100 #5% 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.
Misalkan, jika umur diatas atau samadengan 18 tahun boleh membuat SIM. Sedangkan dibawah itu belum boleh.
Maka kita bisa membuatnya dalam program:
# cek_umur.py umur = input("Berapa umur kamu: ") if umur >= 18: print("Kamu boleh membuat SIM") else: print("Kamu belum boleh membuat SIM")
Selain blok If, terdapat juga blok Else yang akan dieksekusi apabila kondisi if lulus == "tidak": print("Kamu harus ikut remidi")5 salah (if lulus == "tidak": print("Kamu harus ikut remidi")6).
Hasil eksekusi dari kode di atas adalah sebagai berikut:
Struktur Percabangan If/Elif/Else
Percabangan If/Elif/Else digunakan apabila terdapat lebih dari dua pilihan keputusan.
if begini: maka ini elif begitu: maka itu else: pokoknya gitu dah!
Kata kunci if lulus == "tidak": print("Kamu harus ikut remidi")7 artinya Else if, fungsinya untuk membuat kondisi/logika tambahan apabila kondisi pertama salah.