Semua artikel

Menghitung usia: mengapa bukan sekadar pengurangan tahun

Cara sederhana menghitung usia adalah mengurangi tahun lahir dari tahun saat ini. Tapi pendekatan ini memberi hasil salah untuk siapa pun yang ulang tahunnya di tahun ini belum tiba — dan satu hari itu bisa jadi penentu apakah seseorang sudah cukup umur secara hukum atau belum.

Mengapa pengurangan tahun sederhana bisa salah

Jika seseorang lahir 15 Desember 1990, dan hari ini 1 Januari 2024, perhitungan naif 2024 - 1990 menghasilkan 34 tahun — padahal orang itu baru akan berusia 34 tahun hampir setahun lagi. Perhitungan yang akurat harus memeriksa apakah ulang tahun di tahun ini sudah lewat, bukan hanya selisih tahun.

Algoritma yang benar

Pertama hitung selisih tahun, lalu bandingkan bulan dan tanggal lahir dengan bulan dan tanggal saat ini. Jika ulang tahun di tahun ini belum tiba (bulan lebih awal, atau bulan sama tapi tanggal lebih awal), kurangi satu dari hasilnya.

29 Februari sebagai kasus khusus

Untuk orang yang lahir 29 Februari, di tahun non-kabisat ulang tahunnya biasanya dianggap 28 Februari atau 1 Maret tergantung konteks — salah satu kasus tepi yang sering terlewat saat menulis kode perhitungan usia.

Untuk apa ini dibutuhkan

  • Menghitung usia secara akurat untuk formulir pendaftaran dengan verifikasi batas usia minimum.
  • Memverifikasi bahwa kode Anda menangani kasus tepi dengan benar (29 Februari, ulang tahun hari ini).
  • Cepat mendapatkan usia tepat dalam tahun, bulan, dan hari dari tanggal lahir.

Mengapa usia dewasa secara hukum kadang dimulai sehari sebelum ulang tahun

Dalam hukum beberapa negara (terutama Inggris), berlaku prinsip "tidak ada pecahan hari" — seseorang dianggap telah mencapai usia tertentu sejak momen pertama pada hari sebelum peringatan kelahirannya, karena hari ulang tahun dihitung sebagai satu hari penuh yang telah dijalani. Ini adalah detail hukum murni yang tidak sesuai dengan pemahaman usia sehari-hari, dan menunjukkan bahwa bahkan "berapa usia seseorang" bisa berbeda tergantung sistem hukum yang dipakai.

Coba alat