Latihan kode program bahasa Python kali ini akan membahas cara memeriksa tahun kabisat (leap year). Soal ini biasa dipakai untuk menguji pemahaman seputar kondisi if else.
Soal Cek Tahun Kabisat
Buatlah kode program dalam bahasa Python yang meminta data input berupa sebuah tahun (4 digit angka). Program kemudian memeriksa apakah tahun tersebut merupakan tahun kabisat atau tidak.
Tahun kabisat adalah tahun yang bulan februari-nya berjumlah 29 hari. Biasanya tahun kabisat datang setiap 4 tahun sekali, tapi ada ketentuan yang lebih khusus. Syarat dari tahun kabisat adalah:
- Jika angka tahun itu habis dibagi 400, maka itu tahun kabisat.
- Jika angka tahun itu tidak habis dibagi 400 tetapi habis dibagi 100, maka itu bukan tahun kabisat.
- Jika angka tahun itu tidak habis dibagi 400, tidak habis dibagi 100 akan tetapi habis dibagi 4, maka itu adalah tahun kabisat.
- Jika angka tahun tidak habis dibagi 400, tidak habis dibagi 100, dan tidak habis dibagi 4, maka bukan tahun kabisat.
Berikut contoh tampilan akhir yang diinginkan (1) :
## Program Python Cek Tahun Kabisat ## ======================================== Input tahun: 2028 2028 adalah tahun kabisat
Berikut contoh tampilan akhir yang diinginkan (2) :
## Program Python Cek Tahun Kabisat ## ======================================== Input tahun: 2023 2023 bukan tahun kabisat
Tips Membuat Kode Program Cek Tahun Kabisat
Berdasarkan syarat dari tahun kabisat, soal ini bisa dipecahkan dengan struktur if else if atau elif, yakni if tahun yang diinput user habis dibagi 400, tampilkan pesan "adalah tahun kabisat", elif habis dibagi 100, tampilkan pesan "bukan tahun kabisat", dst.
Berikut tutorial pendahuluan yang bisa diikuti:
- Cara Pembuatan Variabel Bahasa Python
- Tipe Data Number Bahasa Python
- Jenis-jenis Operator Aritmatika Python
- Percabangan Kondisi If Else If Bahasa Python
Silahkan coba sebentar buat kode programnya.
Kode Program Bahasa Python Cek Tahun Kabisat
Berikut salah satu solusi dari soal cek tahun kabisat menggunakan bahasa pemrograman Python:
print('## Program Python Cek Tahun Kabisat ##') print('========================================') print() year = int(input('Input tahun: ')) if (year % 400) == 0: print(year,'adalah tahun kabisat') elif (year % 100) == 0: print(year,'bukan tahun kabisat') elif (year % 4) == 0: print(year,'adalah tahun kabisat') else: print(year,'bukan tahun kabisat')
Di baris 5, perintah input()
dipakai untuk meminta angka tahun dari user. Data ini ditampung ke variabel year
.
Secara default perintah input()
 mengembalikan data bertipe string, akan tetapi kita perlu tipe data integer karena variabel year
 nantinya akan dipakai dalam perhitungan. Proses konversi dari tipe string menjadi integer dilakukan oleh fungsi int()
.
Selanjutnya terdapat 3 pemeriksaan kondisi if antara baris 7-14. Semua kondisi ini sesuai dengan syarat untuk menentukan apakah sebuah tahun merupakan tahun kabisat atau tidak.
Operator modulus " % " dipakai untuk mencari sisa hasil bagi. Jika variabel year habis dibagi 400, maka itu adalah tahun kabisat. Kondisi ini diperiksa di baris 7.
Hanya jika year tidak habis dibagi 400, barulah kondisi kedua dijalankan, yakni apakah year habis dibagi 100 (baris 9). Jika iya, maka itu bukan tahun kabisat.
Lanjut, hanya jika 2 kondisi pertama tidak dipenuhi akan diperiksa lagi apakah year habis dibagi 4 atau tidak (baris 11). Jika iya, maka itu adalah tahun kabisat.
Terakhir, jika ketiga kondisi sebelumnya tidak terpenuhi, maka year bukanlah tahun kabisat.
Demikian kode program latihan cek tahun kabisat dalam bahasa pemrograman Python. Semoga bisa bermanfaat.