Lompat ke konten Lompat ke sidebar Lompat ke footer

Membuat Program Cek Tahun Kabisat Python

Daftar Isi
1. Syarat Penentuan Tahun Kabisat
2. Script Python Penentuan Tahun Kabisat

Tahun kabisat adalah tahun yang mengalami penambahan 1 hari source. Pada umumnya, 1 tahun dianggap memiliki 365 hari. Padahal kenyataannya tidak. Bumi membutuhkan waktu 365.25 hari dalam satu tahun.

tahun_kabisat

Sisa 0.25 hari ini disimpan, yang kemudian ditambahkan menjadi 1 hari pada tahun kabisat. Sehingga pada tahun tersebut, jumlah hari dalam 1 tahun dianggap 366 hari. 1 Hari ini ditambahkan pada bulan februari, sehingga pada tahun kabisat februari memiliki 29 hari.


Syarat Penentuan Tahun Kabisat

Sebelum memulai coding program python untuk mengecek tahun kabisat, mari kita cek dulu syarat-syarat nya agar lebih mudah dalam membangun algoritma.

Jika kita lihat penjelasan sebelumnya, tahun kabisat seharusnya terjadi setiap 4 tahun sekali, atau tahun yang habis dibagi 4. Tapi, ternyata 365.25 hari dalam setahun pun belum akurat. Pada pengukuran astronomi, seharusnya 1 hari kurang dari 365.25 hari atau lebih tepatnya 365.25 kurang 11 menit.

Kekurangan 11 menit tersebut menyebabkan setiap kelipatan 400 tahun tidak bisa disebut tahun kabisat. Karena pada tahun ke 100, 11 menit tersebut terakumulasi menjadi kekurangan 0.25 hari. Artinya pada abad baru, kelipatan seratus, jumlah hari dalam setahun adalah 365. Dibutuhkan 4 kali 100 tahun agar genap menjadi 1 hari dan menjadi tahun kabisat.

Karena itu, menurut situs math ipb, tahun kabisat adalah tahun yang habis dibagi 4, tapi untuk abad baru, (2000, 2100, dst), abad tersebut harus habis dibagi 400.

Berdasarkan pengertian tersebut, kita dapat menyusun algoritma penentuan tahun kabisat kira-kira seperti ini:

  1. Cek apakah tahun tersebut habis dibagi 4, jika tidak, maka bukan tahun kabisat
  2. Jika sudah bisa dibagi 4, cek lagi apakah tahun tersebut dapat dibagi 100 atau tidak
  3. Jika tidak dapat dibagi 100, maka tahun tersebut adalah kabisat.
  4. Kemudian ketika habis dibagi 100, apakah tahun tersebut habis dibagi 400? Jika habis, maka tahun kabisat
  5. Jika tidak habis dibagi 400, maka bukan tahun kabisat.
Oke, menggunakan algoritma di atas, mari kita susun program pada python untuk mengecek apakah suatu tahun merupakan tahun kabisat.

Script Python Penentuan Tahun Kabisat

Syarat-syarat tahun kabisat di atas diterjemahkan menjadi script python di bawah ini:

 
1   tahun = 2014
2   status = ""
3   
4   if tahun % 4 == 0:
5       if tahun % 100 == 0:
6           if tahun % 400 == 0:
7               status = "tahun kabisat"
8           else::
9               status = "bukan tahun kabisat"
10          
11      else::
12          status = "tahun kabisat"
13      
14  else::
15      status = "bukan tahun kabisat"
16      
17  print("tahun", tahun, status)

Agar lebih mantab, marik kita bahas satu persatu baris script di atas.

  1. Baris pertama adalah variabel tahun yang berisi tahun yang akan dicek. Variabel ini bisa dimodifikasi untuk mengambil input dari keyboard.
  2. Syarat pertama tahun kabisat, habis dibagi 4. Digunakan if pada baris ke-4, kemudian cabangnya else pada baris 14. Ketika tidak bisa dibagi 4, langsung statusnya "bukan tahun kabisat".
  3. Syarat selanjutnya adalah apakah tahun tersebut abad baru atau habis dibagi 100. Digunakan if pada baris ke 5, dan percabangannya pada baris ke-11. Ketika bukan abad baru, maka tahun tersebu adalah "tahun kabisat"
  4. Selanjutnya syarat selanjutnya menggunakan if pada baris ke-6 dan cabangnya pada baris ke-8. Ketika tahun habis dibagi 400, maka tahun tersebut adalah "tahun kabisat".
  5. Setelah semua syarat tersebut terpenuhi dan status "tahun kabisat didapat", maka hasilnya di-print pada baris ke 17.
Ketika di run, maka akan menghasilkan output seperti ini:

tahun 2048 tahun kabisat
tahun 2100 bukan tahun kabisat
tahun 2400 tahun kabisat

Posting Komentar untuk "Membuat Program Cek Tahun Kabisat Python"