Next Birthday Calculator
Hitung hari hingga ulang tahun berikutnya, usia saat ini, dan hari dalam seminggu.
Tentang alat ini
Hari ulang tahun adalah momen penting yang kita rayakan setiap tahun, tetapi menghitung jumlah hari yang tepat hingga hari ulang tahun Anda berikutnya dapat menjadi sangat berguna untuk merencanakan acara khusus, mengirimkan pengingat kepada orang-orang terkasih, atau sekadar memuaskan rasa ingin tahu Anda tentang berapa lama waktu hingga perayaan berikutnya. Kalkulator Hari Ulang Tahun Berikutnya ini secara instan menghitung berapa hari tersisa hingga hari ulang tahun Anda berikutnya, menampilkan usia Anda saat ini, dan bahkan mengungkapkan hari dalam seminggu apa hari ulang tahun Anda akan jatuh, semuanya berdasarkan tanggal lahir Anda dan tanggal hari ini.
Menggunakan alat ini sangat mudah: masukkan tanggal lahir Anda dan dapatkan penghitungan mundur secara instan dalam hari, usia pasti Anda dalam tahun, dan nama hari dalam seminggu untuk hari ulang tahun Anda berikutnya. Ini berfungsi untuk siapa saja terlepas dari kapan hari ulang tahun mereka, baik itu beberapa bulan lagi atau hanya beberapa minggu lagi, menjadikannya sempurna untuk merencanakan pesta kejutan, menjadwalkan acara terkait hari ulang tahun, atau mengatur pengingat sebelumnya.
Pertanyaan yang Sering Diajukan
Implementasi Kode
from datetime import date
def next_birthday_info(birth_date: date, today: date = None) -> dict:
"""Calculate days until next birthday, current age, and day of week."""
if today is None:
today = date.today()
age = today.year - birth_date.year
# Check if birthday already happened this year
had_birthday = (today.month, today.day) >= (birth_date.month, birth_date.day)
if not had_birthday:
age -= 1
# Next birthday
next_year = today.year if not had_birthday else today.year + 1
try:
next_bday = date(next_year, birth_date.month, birth_date.day)
except ValueError: # Feb 29 on non-leap year
next_bday = date(next_year, 3, 1)
days_until = (next_bday - today).days
day_of_week = next_bday.strftime("%A")
return {
"current_age": age,
"next_birthday": next_bday.isoformat(),
"days_until": days_until,
"day_of_week": day_of_week,
"is_today": days_until == 0,
}
info = next_birthday_info(date(1990, 7, 15))
print(f"Age: {info['current_age']}")
print(f"Next birthday: {info['next_birthday']} ({info['day_of_week']})")
print(f"Days until: {info['days_until']}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.