Di panduan sebelumnya kita telah membahas mengenai perulangan If Else, yakni sebuah percabangan kode program dimana seandainya kondisi If bernilai True, karenanya jalankan pedoman yang terdapat di di blok If tersebut. Namun seandainya kondisi bernilai False, karenanya jalankan kode program di di blok Else.
Kali ini kita akan lanjut membahas percabangan If Else If, yang boleh disamakan dengan “menyambung” beberapa kondisi If Else sekaligus.
Pengertian Kondisi If Else If Bahasa Python
Di dasarnya, kondisi If Else If yakni sebuah struktur logika program yang di dapat dengan cara menyambung beberapa kondisi If Else menjadi sebuah kesatuan.
Bila kondisi pertama-tama tak terpenuhi atau bernilai False, karenanya kode program akan lanjut ke kondisi If di bawahnya. Bila ternyata tak pun terpenuhi, akan lanjut lagi ke kondisi If di bawahnya, dst hingga blok Else terakhir atau terdapat kondisi If yang bernilai True.
Berikut format basic penulisan kondisi If Else If di bahasa Python:
1 |
if condition_1: <br/> # Kode program yang dijalankan seandainya condition_1 bernilai True <br/> # Kode program yang dijalankan seandainya condition_1 bernilai True<br/>elif condition_2: <br/> # Kode program yang dijalankan seandainya condition_2 bernilai True <br/> # Kode program yang dijalankan seandainya condition_2 bernilai True<br/>elif condition_3: <br/> # Kode program yang dijalankan seandainya condition_3 bernilai True <br/> # Kode program yang dijalankan seandainya condition_3 bernilai True<br/>else:<br/> # Kode program yang dijalankan seandainya semua kondisi tak terpenuhi<br/> # Kode program yang dijalankan seandainya semua kondisi tak terpenuhi<br/> |
Yang perlu menjadi perhatian, di di bahasa Python, perintahnya bukan else if, tapi elif. Ini lumayan berbeda dengan kebanyakan bahasa pemrograman lain. Mari kita lihat contoh prakteknya.
Contoh Kode Program Percabangan If Else If Bahasa Python
Selaku contoh pertama-tama, saya ingin menyusun sebuah kode program untuk menampilkan teks dari sebuah angka nilai. Variabel asal berisi sebuah huruf antara ‘A’ – ‘E’. Kemudian kode program akan menampilkan hasil tampilan yang berbeda-beda untuk setiap huruf, termasuk seandainya huruf tersebut di luar ‘A’ – ‘E’.
Berikut contoh kode programnya:
1 |
nilai = 'D'<br/><br/>if nilai == 'A':<br/> print('Pertahankan')<br/>elif nilai == 'B':<br/> print('Mesti lebih bagus lagi')<br/>elif nilai == 'C':<br/> print('Perbanyak belajar')<br/>elif nilai == 'D':<br/> print('Jangan keseringan main')<br/>elif nilai == 'E':<br/> print('Kebanyakan bolos...')<br/>else:<br/> print('Maaf, format nilai tak sesuai') |
Hasil kode program:
1 |
Jangan keseringan main |
Di baris 1 saya mendefinisikan sebuah variabel nilai dengan huruf ‘D’.
Mulai dari baris 3 hingga 14, terdapat 5 buah pemeriksaan kondisi, yakni satu untuk setiap block elif. Di setiap kondisi, isi variabel nilai akan di diperiksa apakah itu berupa karakter ‘A’, ‘B’, hingga ‘E’. Bila diantara kondisi ini terpenuhi, karenanya block kode program yang sesuai akan di eksekusi.
Bila ternyata nilai inputan bukan diantara dari karakter ‘A’ – ‘E’, karenanya block Else di baris 14 lah yang akan dijalankan.
Setiap kondisi dari block elif ini dapat diisi dengan perbandingan yang lebih kompleks, seperti contoh berikut:
1 |
nilai = 65<br/>print('Nilai:',nilai)<br/><br/>if nilai >= 90:<br/> print('Pertahankan')<br/>elif (nilai >= 80) and (nilai < 90):<br/> print('Mesti lebih bagus lagi')<br/>elif (nilai >= 60) and (nilai < 80):<br/> print('Perbanyak belajar')<br/>elif (nilai >= 40) and (nilai < 60):<br/> print('Jangan keseringan main')<br/>elif nilai < 40:<br/> print('Kebanyakan bolos...')<br/>else:<br/> print('Maaf, format nilai tak sesuai') |
Di sini saya memodifikasi sedikit kode program kita sebelumnya. Sekarang ini ini nilai inputan berupa angka antara 0 hingga 100. Angka inputan ini ditampung ke di variabel nilai.
Di baris 4, isi dari variabel nilai di periksa apakah berisi angka yang lebih dari 90. Bila iya, tampilkan teks “Pertahankan!”.
Bila kondisi di baris 4 tak terpenuhi (yang artinya isi variabel nilai kurang dari 90), karenanya kode program akan lanjut ke kondisi elif berikutnya di baris 6. Di sini saya menggabungkan dua buah kondisi menggunakan operator logika and. Kondisi elif (nilai >= 80) and (nilai < 90) hanya akan terpenuhi seandainya isi variabel nilai berada di rentang 80 hingga 89.
Ketika menyusun kondisi perbandingan, kita mesti hati-hati dengan pemakaian tanda, apakah ingin menggunakan tanda lebih besar saja (>) atau tanda lebih besar sama dengan (>=) karena dapat mempengaruhi hasil ahir.
Bila ternyata kondisi ini tak dipenuhi pun (artinya isi variabel nilai kurang dari 80), program akan lanjut ke kondisi elif (nilai >= 60) and (nilai < 80) di baris 8, yakni apakah nilai berada di rentang 60 – 79. Demikian seterusnya hingga kondisi terakhir elif nilai < 40 di baris 12.
Bila semua kondisi tak terpenuhi, jalankan block Else di baris 14.
Silahkan sobat coba tukar isi variabel nilai, dan teks yang tampil pun akan berbeda-beda.
1 |
Nilai: 65<br/>Perbanyak belajar<br/><br/>Nilai: 96<br/>Pertahankan<br/><br/>Nilai: 36<br/>Kebanyakan bolos... |
Namun yang lumayan unik yakni, seandainya kita memberikan nilai di luar rentang 0 – 100, akan tetap ditangkap oleh kondisi if di baris 4 atau di baris 14:
1 |
Nilai: 199<br/>Pertahankan!<br/><br/>Nilai: -1000<br/>Kebanyakan bolos... |
Ini terjadi karena nilai 200 tetap memenuhi syarat if nilai >= 90, dan nilai -1000 pun tetap memenuhi syarat elif nilai < 40. Silahkan sobat modifikasi kode program di atas agar seandainya diinput angka di luar dari rentang 0 -100, akan tampil teks “Maaf, format nilai tak sesuai”. Untuk hal ini kita cuma perlu mengubah / menambah 2 kondisi saja.
Di panduan kali ini kita telah membahas mengenai konsep struktur logika if else if atau elif, yang tak lain berupa kondisi if yang saling bersambung. Berikutnya kita akan masuk ke struktur perulangan while.
Sumber https://www.duniailkom.com/