Passer au contenu

Calculatrice d'âge — Âge exact en années, mois et jours

Calculatrice d'âge gratuite : entrez votre date de naissance pour obtenir votre âge exact en années, mois et jours, plus le nombre total de semaines, jours, heures et votre prochain anniversaire.

Calculatrice d'âge

Âge exact
36 ans 7 mois 26 jours

Vous êtes né(e) un Monday

Prochain anniversaire: 127 jours (vous tournez 37)

Votre âge en autres unités

Mois
439
Semaines
1,912
Jours
13,387
Heures
321,288
Minutes
19,277,280
Secondes
1,156,636,800

Progression de la vie

Votre âge par rapport à une période de référence illustrative de 80 ans.

Visualisation de l'âge3636 / 80 ans080
Calculateur de chargement...
📚

Documentation

Qu’est-ce qu’un calculateur d’âge ?

Un calculateur d’âge trouve la durée exacte entre deux dates : une date de naissance et une date cible, généralement aujourd’hui. Il indique le résultat en années, mois et jours, ainsi que sous forme de total cumulé en mois, semaines, jours, heures, minutes et secondes. L’âge peut également être calculé pour une date passée ou future, ce qui indique l’âge d’une personne à cette date ou l’âge qu’elle aura ce jour-là.

Comment calculer l’âge

L’âge correspond à l’écart entre deux dates du calendrier. Il existe deux façons correctes de décrire cet écart, chacune étant utile selon l’objectif.

Âge calendaire (années, mois, jours)

C’est la façon courante d’indiquer son âge, par exemple « 33 ans, 4 mois et 5 jours ». Il se calcule en trois étapes :

  1. Compter le nombre d’années entières écoulées depuis la date de naissance.
  2. À partir du dernier anniversaire, compter le nombre de mois entiers écoulés.
  3. À partir de cette date, compter les jours restants.

L’étape 3 devient délicate vers la fin d’un mois, car les mois n’ont pas tous le même nombre de jours. Une personne née le 31 janvier, dont l’âge est calculé le 1 mars, a 1 mois et 1 jour. Un mois après le 31 janvier, on arrive au 28 février (ou au 29 février lors d’une année bissextile), puisqu’il n’existe pas de 31 février. Le 1 mars est le jour suivant. Cette méthode, parfois appelée règle relativedelta d’après la bibliothèque Python qui l’a popularisée, ramène la date anniversaire au dernier jour du mois le plus court afin que le décompte des jours ne devienne jamais négatif.

Durée totale écoulée (jours, heures, secondes)

Pour compter précisément la durée vécue, les deux dates sont converties en un même instant, puis la différence est calculée en jours entiers :

d=⌊t−b86400000⌋d = \left\lfloor \frac{t - b}{86400000} \right\rfloor

où d est le nombre de jours entiers, t la date cible et b la date de naissance, chacun étant exprimé comme un nombre de millisecondes, et le diviseur étant le nombre de millisecondes dans une journée.

Les deux dates sont réglées sur minuit UTC (temps universel coordonné) avant la soustraction. Cela empêche les changements liés à l’heure d’été d’ajouter ou de retirer une heure et de fausser le décompte des jours. À partir du nombre total de jours, le nombre de semaines correspond au nombre de jours divisé par 7, arrondi à l’entier inférieur. Les heures, minutes et secondes correspondent au nombre de jours multiplié par 24, 1 440 et 86 400.

Diviser le nombre total de jours par 365 ou 365,25 donne un âge approximatif en années, mais cette méthode ne tient pas compte des années bissextiles présentes dans l’intervalle. Le calcul calendaire décrit ci-dessus est exact. Il faut utiliser l’âge calendaire pour répondre à la question « quel âge ai-je ? ». Le nombre total de jours ou de semaines convient aux tâches qui exigent une durée écoulée précise, comme le calcul de l’intervalle entre des prises de médicament ou le compte à rebours jusqu’à une échéance.

Exemple détaillé

Une personne née le 1 janvier 2000, dont l’âge est calculé le 1 janvier 2020 :

MesureValeur
Âge calendaire20 ans, 0 mois, 0 jours
Nombre total de mois240
Nombre total de semaines1 043
Nombre total de jours7 305
Nombre total d’heures175 320
Nombre total de minutes10 519 200
Nombre total de secondes631 152 000
Jour de la semaine de naissanceSamedi

Le total de 7 305 jours correspond à 20 × 365 plus 5 jours bissextiles, pour les années bissextiles 2000, 2004, 2008, 2012 et 2016. Chacune de ces années a ajouté un 29 février compris dans la période de 20 ans. C’est pourquoi le nombre de jours est supérieur à un simple 20 × 365 et pourquoi un calcul manuel peut facilement comporter une erreur de quelques jours.

Formule de calcul de l’âge en code

La méthode de calcul de l’âge calendaire présentée ci-dessus peut être mise en œuvre dans la plupart des langages de programmation. Il est plus sûr d’utiliser une bibliothèque de gestion des dates intégrée que de programmer manuellement les règles concernant les années bissextiles et la longueur des mois.

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

Microsoft avertit que l’argument "md" peut renvoyer un nombre négatif ou un nombre de jours erroné à proximité des limites entre les mois ; la partie correspondant aux jours restants de cette formule ne concorde donc pas toujours avec la règle de plafonnement ci-dessus.

Foire aux questions

Comment trouver mon âge exact ? Saisissez une date de naissance et laissez la date cible sur aujourd’hui. Le résultat indique l’âge en années, mois et jours, ainsi que le même âge exprimé en jours, semaines, heures et secondes au total.

Pourquoi deux calculateurs d’âge donnent-ils des résultats différents ? La différence vient généralement de la manière dont sont comptés les jours restants près de la limite entre deux mois. Un calculateur qui limite le calcul au mois le plus court en fin de mois, comme décrit ci-dessus, peut différer d’un ou deux jours d’un calculateur qui divise simplement la durée écoulée par 30.

Le calcul tient-il compte des années bissextiles ? Oui. Le nombre total de jours inclut chaque 29 février compris entre les deux dates. Lorsqu’une année ne comporte pas de 29 février, l’anniversaire d’une personne née un jour bissextile est compté le 28 février, dernier jour de ce mois. Une personne née le 29 février 1996 a 26 ans, 11 mois et 22 jours le 20 février 2023, et son prochain anniversaire tombe 8 jours plus tard, le 28 février 2023.

Peut-on calculer l’âge pour une date passée ou future ? Oui. En définissant une date cible future, on obtient l’âge qu’aura la personne ce jour-là. En définissant une date passée, on obtient l’âge qu’elle avait alors. La date de naissance elle-même ne peut pas être située dans le futur, et la date cible ne peut pas être antérieure à la date de naissance.

Les fuseaux horaires influent-ils sur le résultat ? Non. Les deux dates sont converties en minuit UTC avant le calcul du nombre de jours ; le total reste donc identique, quelle que soit la localisation de l’utilisateur ou les changements d’heure saisonniers.

Pourquoi le nombre de jours diffère-t-il d’une division du nombre de jours par 365,25 ? La valeur 365,25 n’est qu’une durée moyenne d’une année ; elle n’indique pas quelles années de l’intervalle sont des années bissextiles de 366 jours. Compter les jours entiers entre deux dates réelles du calendrier est exact.

Sources

  1. Python dateutil — relativedelta, règle calendaire des mois et des jours décrite ci-dessus.
  2. Plateforme Java — Period.between et ChronoUnit.DAYS.
  3. Microsoft Excel — fonction DATEDIF.
  4. MDN Web Docs — Date.
  5. Dershowitz, N. et Reingold, E. M. Calendrical Calculations: The Ultimate Edition. Cambridge University Press, 2018.