تخطي إلى المحتوى

حاسبة العمر — العمر الدقيق بالسنوات والأشهر والأيام

حاسبة عمر مجانية: أدخل تاريخ ميلادك للحصول على عمرك الدقيق بالسنوات والأشهر والأيام، بالإضافة إلى إجمالي الأسابيع والأيام والساعات وعيد ميلادك القادم.

حاسبة العمر

العمر الدقيق
36 سنوات 7 أشهر 26 أيام

لقد ولدت يوم Monday

عيد الميلاد القادم: 127 يوماً من الآن (تصل إلى 37)

عمرك بوحدات أخرى

الأشهر
439
الأسابيع
1,912
الأيام
13,387
الساعات
321,288
الدقائق
19,277,280
الثواني
1,156,636,800

تقدم العمر

عمرك مقابل مدة مرجعية توضيحية قدرها 80 سنة.

تصور العمر3636 / 80 سنوات080
حاسبة التحميل...
📚

التوثيق

ما حاسبة العمر؟

تجد حاسبة العمر المدة الدقيقة بين تاريخين: تاريخ الميلاد وتاريخ مستهدف، وهو عادةً تاريخ اليوم. وتعرض النتيجة بالسنوات والأشهر والأيام، وكذلك كمجاميع كلية بالأسابيع والأيام والساعات والدقائق والثواني. ويمكن أيضًا حساب العمر في تاريخ ماضٍ أو مستقبلي، فيظهر كم كان عمر الشخص، أو كم سيكون، في ذلك اليوم.

كيفية حساب العمر

العمر هو الفاصل بين تاريخين تقويميين. توجد طريقتان صحيحتان لوصف هذا الفاصل، وكلتاهما مفيدة لأغراض مختلفة.

العمر التقويمي (بالسنوات والأشهر والأيام)

هذه هي الطريقة اليومية التي يذكر بها الناس أعمارهم، مثل: «33 سنة و4 أشهر و5 أيام». ويُحسب في ثلاث خطوات:

  1. احسب السنوات الكاملة التي مضت منذ تاريخ الميلاد.
  2. بدءًا من آخر عيد ميلاد، احسب الأشهر الكاملة التي مضت.
  3. بعد ذلك، احسب الأيام المتبقية.

تصبح الخطوة 3 دقيقة قرب نهاية الشهر، لأن الأشهر لا تتساوى في عدد الأيام. فمن وُلد في 31 يناير ويُقاس عمره في 1 مارس يكون عمره شهرًا واحدًا (1) ويومًا واحدًا (1). ويقع بعد شهر واحد من 31 يناير في 28 فبراير (أو 29 فبراير في السنة الكبيسة)، إذ لا يوجد 31 فبراير. ويأتي 1 مارس بعد ذلك بيوم واحد. وهذه الطريقة، التي تُسمّى أحيانًا قاعدة relativedelta نسبةً إلى مكتبة بايثون التي أشاعتها، تحصر تاريخ الذكرى في آخر يوم من الشهر الأقصر حتى لا يصبح عدد الأيام سالبًا أبدًا.

إجمالي الزمن المنقضي (بالأيام والساعات والثواني)

لإجراء حساب دقيق للزمن الذي عاشه الشخص، يُحوَّل التاريخان إلى نقطة زمنية واحدة، ثم يُحسب الفرق بالأيام الكاملة:

الأيام = floor((التاريخ المستهدف − تاريخ الميلاد) ÷ 86,400,000 ميلي ثانية)

يُضبط التاريخان على منتصف الليل بالتوقيت العالمي المنسق (UTC) قبل إجراء الطرح. ويمنع ذلك تغييرات التوقيت الصيفي من إضافة ساعة أو حذفها، بما قد يؤدي إلى انحراف عدد الأيام. ومن إجمالي الأيام، يُحسب عدد الأسابيع بقسمة الأيام على 7 مع التقريب إلى الأسفل. أما الساعات والدقائق والثواني، فتُحسب بضرب عدد الأيام في 24 و1,440 و86,400.

تعطي قسمة إجمالي الأيام على 365 أو 365.25 عمرًا تقريبيًا بالسنوات، لكنها لا تعرف أي السنوات ضمن تلك المدة كانت سنوات كبيسة. أما الحساب التقويمي، الموضح أعلاه، فهو دقيق. استخدم العمر التقويمي للإجابة عن سؤال «كم عمري؟». واستخدم إجمالي الأيام أو الأسابيع في المهام التي تتطلب زمنًا منقضيًا دقيقًا، مثل تحديد مواعيد جرعات الدواء أو العد التنازلي إلى موعد مهم.

مثال تطبيقي

شخص مولود في 1 يناير 2000، وقيس عمره في 1 يناير 2020:

المقياسالقيمة
العمر التقويمي20 سنة و0 أشهر و0 أيام
إجمالي الأيام7,305
إجمالي الأسابيع1,043
يوم الأسبوع الذي وُلد فيهالسبت

يساوي إجمالي 7,305 أيام 20 × 365 مضافًا إليها 5 أيام كبيسة، وهي أيام السنوات الكبيسة 2000 و2004 و2008 و2012 و2016. فقد أضافت كل سنة من هذه السنوات يوم 29 فبراير يقع داخل مدة الـ20 سنة. ولهذا يزيد عدد الأيام على حاصل 20 × 365 البسيط، ولهذا أيضًا يسهل الخطأ بضعة أيام عند حسابه يدويًا.

صيغة حساب العمر في الشيفرة

يمكن تنفيذ طريقة حساب العمر التقويمي المذكورة أعلاه في معظم لغات البرمجة. واستخدام مكتبة تواريخ مدمجة أكثر أمانًا من كتابة قواعد السنوات الكبيسة وأطوال الأشهر يدويًا.

1from dateutil.relativedelta import relativedelta
2from datetime import date
3
4birth, target = date(2000, 1, 1), date(2020, 1, 1)
5
6age = relativedelta(target, birth)     # calendar age
7print(f"{age.years}y {age.months}m {age.days}d")
8
9total_days = (target - birth).days     # total elapsed days
10print(total_days)                      # 7305
11

لا توصي مايكروسوفت باستخدام الوحدة "MD" في الدالة DATEDIF. فقد تُرجع عددًا سالبًا أو صفرًا أو نتيجة غير دقيقة.

الأسئلة الشائعة

كيف أجد عمري الدقيق؟ أدخل تاريخ الميلاد واترك التاريخ المستهدف على تاريخ اليوم. وتعرض النتيجة العمر بالسنوات والأشهر والأيام، إلى جانب العمر نفسه محسوبًا بإجمالي الأيام والأسابيع والساعات والثواني.

لماذا تعطي حاسبتان للعمر إجابتين مختلفتين؟ يكمن الاختلاف عادةً في طريقة حساب الأيام المتبقية قرب نهاية الشهر. فقد تختلف حاسبة تضبط التاريخ على الشهر الأقصر عند نهاية الشهر، كما وُصف أعلاه، بيوم أو يومين عن حاسبة تقسم الزمن المنقضي ببساطة على 30.

هل يراعي الحساب السنوات الكبيسة؟ نعم. يشمل إجمالي عدد الأيام كل يوم 29 فبراير يقع بين التاريخين، ويُقاس تاريخ الميلاد 29 فبراير مقابل 28 فبراير في السنوات غير الكبيسة.

هل يمكن حساب العمر في تاريخ ماضٍ أو مستقبلي؟ نعم. فتحديد التاريخ المستهدف بتاريخ مستقبلي يُظهر كم سيكون عمر الشخص في ذلك اليوم، وتحديده بتاريخ ماضٍ يُظهر كم كان عمره.

هل تؤثر المناطق الزمنية في النتيجة؟ لا. يُحوَّل التاريخان إلى منتصف الليل بالتوقيت العالمي المنسق (UTC) قبل حساب عدد الأيام، لذلك يبقى الإجمالي نفسه بغض النظر عن موقع المستخدم أو تغييرات التوقيت الصيفي.

لماذا يختلف عدد الأيام عن قسمة الأيام على 365.25؟ إن 365.25 ليس إلا متوسط طول السنة؛ فهو لا يحدد أي السنوات المحددة ضمن المدة كانت سنوات كبيسة مؤلفة من 366 يومًا. ويُعدّ حساب الأيام الكاملة بين تاريخين تقويميَّين حقيقيين دقيقًا.

المراجع

  1. مشروع dateutil. relativedelta. وثائق dateutil لـ relativedelta — عندما يتجاوز الشهر المضاف نهاية شهر أقصر، يُستخدم آخر يوم من ذلك الشهر.
  2. MDN Web Docs (Mozilla). Date. مرجع MDN لـ Date — التاريخ في جافاسكربت هو عدد من الميلي ثانية منذ 1 يناير 1970 بالتوقيت العالمي المنسق؛ و±8.64 × 10¹⁵ ms تساوي ±100,000,000 يوم، فاليوم الواحد 86,400,000 ms.
  3. U.S. Naval Observatory. Leap Years. الأسئلة الشائعة عن السنوات الكبيسة في USNO — السنوات القابلة للقسمة على 4 كبيسة، باستثناء سنوات القرون غير القابلة للقسمة على 400؛ والسنة 2000 كبيسة.
  4. Microsoft. DATEDIF function. دعم مايكروسوفت: DATEDIF — الوحدات "Y" و"YM" و"MD"، والقيود المعروفة للوحدة "MD".