Modul 3: Pengkondisian¶
Di modul ini anda akan belajar materi tentang:
Operator perbandingan
Kondisi
Statement if-elif-else
Block program
Nested if
Petunjuk Penggunaan Trinket.io¶
Trinket.io dapat digunakan untuk menjalankan kode Python di browser
Sebelum menjalankan Trinket.io, pastikan mereset kode terlebih dahulu. Karena perubahan yang dilakukan oleh pengguna sebelumnya akan terlihat oleh pengguna web setelahnya. Sehingga bisa jadi kode contoh yang anda lihat saat ini bukanlah yang asli, tetapi hasil perubahan pengunjung web ini sebelumnya.
Cara untuk reset adalah: klik menu (garis 3) pojok kiri atas, lalu klik Reset.
Operator Perbandingan¶
Selain menghitung (e.g., 4 + 20 ** 2
), komputer juga bisa menjawab Yes/No question sederhana, misalnya apakah nilai yang diinputkan user bilangan positif? Apakah uang yang ingin ditarik nasabah kurang dari limit pengambilan ATM dan kurang dari uang yang ada di tabungannya?
Jika difikirkan lagi, pertanyaan yang mirip seperti di atas sangat penting bagi banyak program komputer. Dengan mengetahui jawaban dari pertanyaan-pertanyaan di atas, program bisa memilih aksi yang tepat, seperti meminta user menginputkan lagi jumlah mahasiswa dengan angka yang valid (e.g., tidak negatif), atau membatalkan transaksi ATM karena uang yang ingin ditarik melebihi batas pengambilan di ATM.
Dari pertanyaan di atas, komputer hanya akan memiliki 2 kemungkinan jawaban, yaitu:
True
(benar/yes)False
(salah/no)
Perhatikan contoh kode berikut, coba beberapa kali dengan memasukkan angka yang berbeda-beda (i.e., positif, negatif):
>>> bil = int(input("Masukkan sebuah bilangan : "))
>>> print("Apakah bilangan yang dimasukkan merupakan bilangan positif?")
>>> print(bil > 0)
Contoh output jika bilangan yang dimasukkan 10, dan -1:
Masukkan sebuah bilangan : 10
Apakah bilangan yang dimasukkan merupakan bilangan positif?
True
Masukkan sebuah bilangan : -1
Apakah bilangan yang dimasukkan merupakan bilangan positif?
False
Dari contoh di atas, program menanyakan apakah bilangan yang diinputkan user positif atau tidak menggunakan operator perbandingan >
(lebih besar dari).
Berikutnya mari kita lihat jenis operator perbandingan lainnya yang bisa digunakan program untuk bertanya.
Sama dengan (==
)¶
Tanda ==
menanyakan apakah nilai di kiri sama dengan nilai di kanan?
Contoh penggunaannya adalah ketika kita ingin memastikan pilihan menu yang diinputkan oleh user.
>>> menu = int(input("Masukkan pilihan menu 1-3 : "))
>>> print(menu == 1)
>>> print(menu == 2)
>>> print(menu == 3)
>>> pwd = "rahasia"
>>> user_pwd = input("Masukkan password : ")
>>> print(user_pwd == pwd)
Selain hasil perbandingan user_pwd == pwd
langsung diprint, tentu saja kita bisa simpan di sebuah variable, untuk digunakan lagi kemudian.
>>> pwd = "rahasia"
>>> user_pwd = input("Masukkan password : ")
>>> cek = user_pwd == pwd
>>> print(cek)
Note
Perhatikan perbedaan antara operator =
(assignment), dengan operator ==
(sama dengan). Mirip namun sangat berbeda maknanya.
Anda bisa memikirkan contoh pertanyaan lain dan mencoba memformulasikan pertanyaan tersebut dengan operator ==
.
Tidak sama dengan (!=)¶
Berlawanan dengan ==
, operator !=
menanyakan apakah nilai di kiri tidak sama dengan nilai di kanan?
Jawaban yang dihasilkan tentu berlawanan dengan jawaban yang dihasilkan dari operator ==
, jika operator ==
menghasilkan True
, maka !=
akan menghasilkan False
, dan sebaliknya.
>>> asal = input("Dari mana asal kotamu? ")
>>> print(asal != "Bandung")
Meskipun jawaban operator !=
bisa didapat dengan menegasikan (True –> False, False –> True) jawaban dari operator ==
dan sebaliknya, namun pada prakteknya kedua operator tetap digunakan. Kita biasa menggunakan operator ==
ketika kita lebih tertarik jika kedua nilai yang dibandingkan adalah sama, dan sebaliknya.
Sebagai contoh, setelah user menginputkan menu yang dipilih, maka program akan menampilkan foto dan harga menu yang dipilih tersebut. Di sini program lebih tertarik untuk mengetahui menu mana yang dipilih oleh user, maka gunakan operator ==
.
Bandingkan jika yang diinginkan adalah sebaliknya. Awalnya foto dan harga ketiga menu ditampilkan ke user, setelah user menginputkan menu yang dipilih, maka foto menu yang tidak dipilih akan dihilangkan. Dengan kata lain, program lebih tertarik mengetahui menu mana yang tidak dipilih, maka sebaiknya gunakan operator !=
.
Hal yang sama berlaku untuk pasangan-pasangan operator selanjutnya.
Lebih besar dari (>
) dan Lebih kecil dari (<
)¶
Operator >
menanyakan apakan nilai yang di kiri lebih besar dari nilai yang di kanan, sedangkan operator <
menanyakan sebaliknya.
Umumnya operator ini digunakan untuk data dengan tipe numerik seperti integer
dan floats
.
>>> print(10 > (3 * 2 + 4))
>>> max_penarikan_ATM = 1000
>>> print(2000 > max_penarikan_ATM)
>>> umur = 16
>>> print(umur < 17)
Lebih besar dari atau sama dengan (>=
) dan Lebih kecil dari atau sama dengan (<=
)¶
Mirip seperti >
, namun sebagai tambahan operator >=
juga menghasilkan True
jika nilai kiri sama dengan nilai kanan. Begitu juga untuk <=
.
Meskipun bisa digunakan untuk integer
dan floats
, operator ini khususnya lebih terasa manfaatnya untuk tipe data floats
, perhatikan contoh berikut.
Kelulusan mata kuliah bisa diketahui dari nilai akhirnya, mahasiswa yang lulus adalah yang dengan nilai minimal 70. Jika nilai bertipe data integer
, maka kita bisa tanyakan dengan cara berikut:
nilai > 69
atau
nilai >= 70
Namun jika tipe data nilai adalah floats
, maka pilihan kita hanyalah menggunakan operator >=
, yaitu nilai >= 70
. Hal ini dikarenakan jika menggunakan > 69
maka nilai 69.9
juga akan menjadi True
padahal seharusnya False
.
>>> nilai = 69.9
>>> print(nilai > 69)
>>> print(nilai >= 70)
Kita harus berhati-hati menggunakan operator >=
atau <=
, apalagi jika digunakan bersamaan untuk membandingkan dua hal yang sama, seperti contoh kedua ketika var = 5
, kedua pertanyaan menghasilkan True
. Meskipun anda belum melihat letak masalahnya, saat ini cukup diingat bahwa anda harus berhati-hati dalam memilih menggunakan operator.
>>> var = 5.5
>>> print(var >= 5)
>>> print(var <= 5)
>>> var = 5
>>> print(var >= 5)
>>> print(var <= 5)
Update prioritas operator¶
Prioritas operator-operator perbandingan di bawah operator aritmatik yang telah kita bahas sebelumnya, sehingga tabel sebelumnya kita update menjadi:
Prioritas |
Operator |
Jenis |
---|---|---|
1. |
|
|
2. |
|
|
3. |
|
unary |
4. |
|
|
5. |
|
binary |
6. |
|
Note
Sejauh ini kita selalu menggunakan Python prompt/console untuk menuliskan kode. Hal itu dikarenakan kode yang dibuat tidak terlalu panjang dan agar anda fokus memahami perilaku setiap baris kode yang dijalankan. Mulai saat ini kita akan beralih menggunakan Editor mengingat kode yang ditulis semakin panjang, dan anda lebih mudah mengedit kode tanpa perlu menulis ulang dari awal.
Pengkondisian¶
Setelah sebelumnya kita tau cara bertanya dan jawaban yang mungkin dihasilkan, maka di bagian ini kita akan membahas bagaimana memanfaatkan jawaban True
atau False
tersebut.
Perlu ditekankan, bahwa komputer hanya bisa menjawab dengan True
atau False
dan tidak bisa keduanya sekaligus. Kemungkinan lain adalah program berhenti dieksekusi karena terdapat error pada kode yang kita buat sehingga tidak menghasilkan salah satu jawaban tersebut.
Kondisi-Aksi¶
Setiap program komputer umumnya terdiri dari banyak aksi, bayangkan apa yang bisa dilakukan oleh sebuah aplikasi chatting di handphone anda:
mengirim pesan
menghapus pesan
menelfon
membuat group baru
masuk ke halaman setting
dan lain-lain
Meskipun ada banyak aksi yang mungkin, namun biasanya aksi-aksi tersebut tidak dilakukan serta merta dan secara bersamaan. Di satu waktu ada aksi yang dijalankan, dan ada aksi yang tidak dijalankan. Biasanya ada kondisi tertentu yang mentrigger satu atau lebih aksi untuk dijalankan.
Untuk lebih jelasnya:
Kondisi: Ekspresi yang jika dievaluasi bernilai
True
atauFalse
.Aksi: Instruksi yang dijalankan berdasarkan nilai Kondisi.
Berikut adalah contoh kondisi dan aksi:
Misalnya, apakah menu setting disentuh, jika iya maka program akan menampilkan halaman setting.
Apakah ada pesan masuk, jika
True
, maka bunyikan nada masuk dan getar.Apakah nilai akhir lebih dari 60, jika iya tampilkan pesan “Lulus”.
nilai_akhir = int(input("Nilai Akhir: "))
kondisi = nilai_akhir > 60 #ini adalah kondisi
print("Lulus") #ini adalah aksi yang ingin dijalankan hanya ketika kondisi bernilai True
Nilai Akhir: 40
Lulus
Di kode di atas kita dapat menuliskan kondisi dan aksi, namun aksi tersebut belum bergantung terhadap nilai kondisi. Baik kondisi True
ataupun False
, aksi print("Lulus")
tetap dijalankan. Berikut ini kita akan melihat bagaimana agar aksi dapat bergantung dengan kondisi.
Statement if
¶
Agar statement aksi hanya dijalankan ketika kondisi tertentu bernilai True
, maka Python menyediakan instruksi khusus yang disebut conditional statement dengan keyword if
. Berikut adalah bentuk penggunaannya:
if <kondisi>:
<aksi>
if
: adalah kata kunci, dan case sensitivekondisi
: dapat diisi ekspresi apapun yang bernilaiTrue
atauFalse
:
(titik dua): penanda berakhirnya ekspresi kondisiaksi
: awal penulisan kode aksi harus terdapat indentasi (menjorok ke dalam sekitar 4 spasi dari posisi awalif
)
Di sinilah peran pertanyaan dan jawaban True
/False
yang kita pelajari sebelumnya. Untuk memformulasikan kondisi yang mentrigger aksi, kita biasa gunakan Yes/No question, lalu statement aksi di bawahnya hanya akan dijalankan jika jawaban dari kondisi adalah True
.
Perhatikan contoh kode berikut:
nilai_akhir = int(input("Nilai Akhir: "))
kondisi = nilai_akhir > 60 #ini adalah kondisi
if kondisi == True:
print("Lulus") #ini adalah aksi yang ingin dijalankan hanya ketika kondisi bernilai True
Nilai Akhir: 40
Perhatikan, setelah digunakan statement if
, maka ketika nilai akhir yang diinputkan adalah 40
, program tidak mem-print string "Lulus"
, karena kondisi bernilai False
. Coba jalankan kembali program di atas, dan masukkan nilai 80
.
== True
tidak diperlukan¶
Di contoh di atas kita melihat
if kondisi == True:
sedangkan kondisi
itu sendiri bernilai boolean yang artinya True
atau False
. Jadi, sebenarnya sedikit pemborosan kalau kita menuliskan:
ketika kondisi bernilai
True
, maka:True == True
, dan hasilnya adalahTrue
ketika kondisi bernilai
False
, maka:False == True
, dan hasilnya adalahFalse
dengan kata lain, kita bisa menghapus== True
, karena hasilnya akan sama saja.
Sehingga kita cukup menuliskan seperti di bawah ini:
bil = 4
var_kondisi = bil >= 5 #Apakah nilai bil lebih dari atau sama dengan 5?
if var_kondisi:
print("Bilangan lebih dari atau sama dengan 5") #jika var_kondisi bernilai True, maka statement ini akan dijalankan
Jika bil
kurang dari 5
, maka aksi print("Bilangan lebih dari atau sama dengan 5")
di-skip (tidak dieksekusi) oleh komputer. Namun jika bil
diganti dengan 10
misalnya, maka akan tampak di console hasil eksekusi perintah print()
.
Silakan coba contoh berikutnya:
pwd = input("Masukkan password : ")
if pwd == "rahasia":
print("Password benar")
Latihan¶
Buatlah program untuk memberikan warning “Inputan tidak boleh negatif!”, jika angka yang diberikan adalah negatif.
Click untuk melihat jawaban!
x = float(input('Masukkan sebuah angka:'))
if x < 0:
print('Inputan tidak boleh negatif!')
Statement if-else
¶
Pada statement if
kita telah melihat bahwa jika kondisi True
maka ada aksi yang akan dijalankan, namun bagaimana jika kita juga perlu menjalankan suatu aksi lain jika kondisi False
?
Python menyediakan keyword else
yang bisa digunakan setelah if
yang artinya aksidefault di bawah else
akan dijalankan jika kondisi bernilai False
.
if kondisi:
aksi
else:
aksidefault
Perhatikan contoh berikut:
pwd = input("Masukkan password : ")
if pwd == "rahasia":
print("Password benar")
else:
print("Password salah")
Cara kerja if-else
Pertama, kondisi setelah
if
akan dievaluasi nilainya apakahTrue
atauFalse
,Jika kondisi bernilai
True
, maka aksi yang berada di bawahif
akan dijalankan, laluif-else
statement selesai.Jika kondisi bernilai
False
, maka aksi di bawahif
akan diskip, dan yang dijalankan adalah aksi di bawahelse
, laluif-else
statement selesai.
Perhatikan bahwa, pada statement if-else
pasti ada salah satu aksi yang dijalankan. Sementara jika tanpa else
ada kemungkinan tidak ada aksi yang dijalankan dari statement if
.
Statement elif
¶
Adanya else
telah membuat program mampu memilih antara 2 buah aksi, namun di dunia nyata tak jarang ada lebih dari 2 pilihan aksi. Misalnya, contoh menu makanan kita sebelumnya terdapat 3 jenis menu. Contoh lain, kontrol game komputer sederhana yang bisa menggerakkan pemain ke 4 pilihan arah (i.e., maju, mundur, kiri, kanan).
Untuk mengakomodasi hal tersebut, Python menyediakan keyword lainnya yaitu elif
yang bisa diintegrasikan dengan statement if
.
Cara kerja elif
elif
adalah singkatan dari else if
, bedanya dengan else
adalah elif
tidak serta merta akan menjalankan aksinya jika kondisi if
di atasnya bernilai False
, melainkan ia akan melakukan pengecekan tambahan pada kondisi kedua yang berada setelah elif. Jika kondisi kedua bernilai True
, barulan aksi elif
dijalankan.
Bentuk paling simple dari elif adalah sebagai berikut:
if kondisi1:
aksi1
elif kondisi2:
aksi2
Namun jika ada banyak kondisi, maka kita bisa menggunakan beberapa elif
atau bisa ditambahkan else
di akhir jika ada aksi default.
if kondisi1:
aksi1
elif kondisi2:
aksi2
elif kondisi3:
aksi3
elif kondisi4:
aksi4
else:
aksidefault
Perhatikan dan jalankan kode berikut ini, lalu ubahlah nilai variable menu
ke 2
, 3
, dan 4
dan jalankan lagi “untuk memahami efek penggunaan elif
:
menu = int(input("Pilih menu : "))
if menu == 1:
print("Nasi Goreng: Rp. 15.000")
elif menu == 2:
print("Ayam Bakar: Rp. 20.000")
elif menu == 3:
print("Mie Rebus: Rp. 10.000")
Jika menu = 1
, maka kode di atas akan menghasilkan Nasi Goreng: Rp. 15.000
. Jika menu = 2
, Ayam Bakar: Rp. 20.000
akan tampil di layar. Namun jika menu
diassign dengan selain 1
, 2
, atau 3
, maka tidak ada aksi yang dieksekusi.
Pada statement if
, program selalu mulai memeriksa dari kondisi paling atas. Lalu jika False
akan berpindah ke elif
di bawahnya, dan sterusnya. Statement if
akan selesai jika:
ada kondisi yang bernilai
True
, maka aksinya dijalankan, lalu keluar dari statementif
.atau semua kondisi telah diperiksa.
Perhatikan contoh kode berikut:
menu = int(input("Pilih menu : "))
if menu == 1:
print("Nasi Goreng: Rp. 15.000")
elif menu == 1: #kondisi sama persis dengan kondisi pertama
print("Ayam Bakar: Rp. 20.000")
elif menu == 3:
print("Mie Rebus: Rp. 10.000")
Jika kode di atas dieksekusi, terlihat hanya aksi1 saja yang dijalankan, padahal kondisi kedua juga bernilai True
, namun aksi2 tidak dijalankan. Hal ini dikarenakan, ketika kondisi pertama bernilai True
, maka program akan mengeksekusi aksi1, lalu setelahnya langsung keluar dari statement if
tanpa memeriksa kondisi di bawahnya.
Aksi default
Dalam merumuskan kondisi-kondisi di statement if
, kita perlu memperhatikan semua kemungkinan nilai variable yang berada di kondisi. Hal ini untuk memastikan agar program kita selalu bisa memberikan respon yang tepat.
Seperti pada contoh kode menu di atas, ketika user menginputkan menu selain 1
, 2
, atau 3
, maka program tidak memberikan respon apapun. Meskipun tidak membuat error, ada kalanya kita ingin agar program memberikan informasi ke user tentang nilai yang valid.
Untuk menangani nilai variable selain yang sudah ditangani oleh kondisi-kondisi pada if, kita bisa menambahkan else
di akhir statement if
.
Sebagai contoh, perhatikan kode berikut:
menu = 4
if menu == 1:
print("Nasi Goreng: Rp. 15.000")
elif menu == 2:
print("Ayam Bakar: Rp. 20.000")
elif menu == 3:
print("Mie Rebus: Rp. 10.000")
else:
print("menu tidak valid")
Dengan penambahan else
di akhir, maka kita bisa memberikan sebuah aksi default yang akan dijalankan ketika semua kondisi if
di atasnya bernilai False
.
Rangkaian if
Perlu diingat bahwa satu rangkaian statement if
:
dimulai dari
if
lalu secara opsional diikuti satu atau lebih
elif
lalu secara opsional diakhiri oleh
else
.
Urutan ini tidak bisa diubah, jika diubah akan menyebabkan error.
Ubahlah urutan if
-elif
-else
berikut dan perhatikan error yang muncul.
kodeMK = "A1"
else:
print("Kode tidak valid")
elif kodeMK == "A2":
print("Kalkulus")
elif kodeMK == "A3":
print("Pengenalan Pemrograman")
if kodeMK == "A1":
print("Bahasa Indonesia")
if
independen¶
Jika ada statement if
kemudian diikuti if
yang lain yang memiliki indentasi yang sama, maka kedua if
tersebut bukanlah satu rangkaian alias independen. Konsekuensi if
independen adalah, apapun nilai kondisi (True
atau False
) pada if
pertama, program tetap akan mengevaluasi kondisi pada if
kedua, sehingga memungkinkan aksi pada masing-masing if
akan dijalankan semuanya.
Perhatikan contoh berikut:
var = 15
if var % 3 == 0:
print("Kelipatan 3")
if var % 5 == 0:
print("Kelipatan 5")
Meskipun kondisi pertama sudah bernilai True
dan aksi pertama dijalankan, program tetap saja mengevaluasi kondisi kedua dan menjalankan aksi kedua.
Block statements-Indentasi¶
Dari contoh-contoh sebelumnya, kita lihat terdapat indentasi (beberapa spasi dari kiri yang membuat kode menjorok ke dalam) pada penulisan statement aksi. Indentasi tersebut menentukan bahwa aksi tersebut merupakan bagian dari statement if
.
Seandainya indentasinya dihapus, apa yang terjadi?
bil = 4
if (bil > 0):
print("Bilangan positif")
Maka akan terjadi error
IndentationError: expected an indented block
.
Artinya Python mengharapkan ada block di bawah statement if
yang terindentasi.
Apa itu Block (statement)?
Block statement adalah urutan satu atau lebih statement yang bertindak seperti satu kesatuan, sehingga jika satu statement dijalankan, statement lainnya di block yang sama juga akan dijalankan. Block pada Python ditandai dengan indentasi. Seperti pada gambar di atas, Block 1 merupakan keseluruhan statement pada program, sementara Block 2 merupakan bagian dari Block 1 dan seterusnya.
Perhatikan contoh berikut untuk memahami lebih lanjut tentang block.
bil = 10 #1 block1
if bil >= 0: #2 block1
print("Positif") #3 block2a
if bil % 2 == 0: #4 block2a
print("Genap") #5 block3a
else: #6 block2a-lanjutan
print("Ganjil") #7 block3b
else: #8 block1-lanjutan
print("Bilangan") #9 block2b
print("Negatif") #10 block2b
print("Selesai") #11 block1-lanjutan
Suatu block dimulai dengan indentasi dan akan berakhir ketika menemukan statement yang lebih kurang indentasinya. Contohnya, block2a dimulai pada baris ke-3 dan berakhir pada baris ke-7, karena baris ke-8 memiliki indentasi yang lebih sedikit. Sementara itu, jika menemukan statement dengan indentasi lebih dalam (block baru), maka block tetap berlanjut.
Statement yang mengharapkan block
Perlu diperhatikan bahwa selain statement if, ada beberapa statement lagi (e.g., looping, function) yang mengharuskan ada block baru yang lebih dalam di bawahnya , dan semua statement yang membutuhkan block tersebut diakhiri dengan :
(titik dua).
Multi-aksi
Pada contoh-contoh sebelumnya kita selalu melihat bahwa aksi yang ada pada statement if
berjumlah 1 saja, namun setelah kita tau bahwa if
mengharapkan sebuah block, dan block artinya satu atau lebih statement, maka tentu kita bisa menuliskan banyak aksi dengan indentasi yang sama di bawah statement if
, sebagaimana contoh pada baris ke-9 dan ke-10 pada kode di atas.
Block pada bahasa pemrograman lainnya
Tidak semua bahasa pemrograman menggunakan indentasi sebagai penanda block, bahkan lebih banyak yang menggunakan {
dan }
(kurung kurawal) sebagai pembuka dan penutup block, seperti pada bahasa C, Java, dan Javascript. Meskipun sering terlihat ada indentasi di bahasa-bahasa tersebut, namun hal tersebut bukanlah sebuah keharusan melainkan style penulisan kode saja.
PEP 8-indentation
Python memperbolehkan anda menggunakan jumlah spasi atau tab berapapun untuk menandakan indentasi. Namun, berdasarkan PEP 8 maka direkomendasikan untuk menggunakan 4 spasi untuk setiap level indentasi. Sedangkan penggunaan tab tidak disarankan.
Mixing spasi dan tab
Python tidak memperbolehkan anda menggabungkan penggunaan spasi dan tab untuk identasi, sehingga konsistensi sangat diperlukan. Banyak editor sudah secara otomatis mengkonversi tab menjadi spasi, sehingga seolah-olah error tidak terjadi. Namun jika anda coba ketikkan ulang kode berikut ini di Python Shell, anda akan menemukan error: SyntaxError: inconsistent use of tabs and spaces in indentation
.
if True:
print("4 spasi") #indentasi dengan 4 spasi
print("tab") #indentasi dengan tab
Nested if-else
¶
Terkadang kita membutuhkan beberapa kali pengecekan kondisi sebelum bisa menentukan suatu aksi yang akan dieksekusi oleh program. Sebagai contoh, misalkan sebuah perusahaan akan memberikan bonus kepada karyawan dengan kriteria sebagai berikut:
bonus diberikan hanya untuk karyawan dengan masa kerja >=5 tahun (karyawan baru tidak mendapatkan bonus)
karyawan dengan umur > 50 tahun mendapat bonus 20%, selainnya akan mendapat bonus 10%
Untuk menghitung bonus yang didapatkan setiap karyawan, maka setelah kita mendapatkan input berupa masa_kerja
dan umur
, maka kita perlu melakukan 2 kali pengecekan kondisi, 1) apakah masa_kerja
>= 5 tahun? jika ya, maka kita akan lanjutkan pengecekan 2) apakah umur
> 50 tahun?.
Pengecekan kondisi bertingkat tersebut disebut nested if-else
. Perhatikan implementasinya berikut ini:
masa_kerja = int(input("Masa Kerja : "))
umur = int(input("Umur : "))
if masa_kerja >= 5:
if umur >50:
print("Anda mendapatkan bonus 20%")
else:
print("Anda mendapatkan bonus 10%")
else:
print("Maaf anda belum mendapatkan bonus")
Tentu saja jumlah nested if-else
tersebut tidak terbatas, sebagai contoh kita bisa mempunyai 3 tingkatan yaitu if
di dalam if
di dalam if
seperti kode di bawah ini:
bil1 = int(input("Bilangan ke-1 : "))
bil2 = int(input("Bilangan ke-2 : "))
bil3 = int(input("Bilangan ke-3 : "))
if bil1 > bil2:
if bil2 > bil3:
print(bil1, bil2, bil3)
else:
if bil3 > bil1:
print(bil3, bil1, bil2)
else:
print(bil1, bil3, bil2)
else:
if bil1 > bil3:
print(bil2, bil1, bil3)
else:
if bil3 > bil2:
print(bil3, bil2, bil1)
else:
print(bil2, bil3, bil1)
Bilangan ke-1 : 1
Bilangan ke-2 : 2
Bilangan ke-3 : 3
3 2 1
Coba anda bermain-main dengan kode di atas:
Selamat anda telah menyelesaikan Modul 3!!
Mohon berkenan memberikan Rating dan Feedback agar kami dapat meningkatkan kualitas modul ini!