La façon dont on mesure le temps est un peu chaotique. Il y a 60 secondes dans une minute, et 60 minutes dans une heure. Cela remonte à l'ancienne Babylone, où l'on utilisait 60 comme base de son système de numération. Il y a 24 heures dans une journée, 7 jours dans une semaine, et combien de jours dans un mois ? Eh bien, cela dépend non seulement du mois, mais aussi du type de calendrier utilisé dans le pays où tu vis.
Et si, au lieu de ça, on n'utilisait que des secondes pour exprimer les intervalles de temps ? On pourrait alors utiliser les préfixes du système métrique pour écrire de grands nombres de secondes sous forme de quantités plus faciles à appréhender.
Si un jour on colonise Mars ou une autre planète, mesurer le temps deviendra encore plus compliqué. Si quelqu'un dit « année », parle-t-il d'une année sur Terre ou d'une année sur Mars ?
L'idée de cet exercice vient du roman de science-fiction "A Deepness in the Sky" de l'auteur Vernor Vinge. L'auteur y utilise le système métrique comme base pour mesurer le temps.
Ta tâche consiste à déterminer la date et l'heure une gigaseconde après une date donnée.
Une gigaseconde correspond à un milliard de secondes. C'est un 1 suivi de neuf zéros.
Si tu étais né le 24 janvier 2015 à 22 h 00, tu atteindrais l'âge d'une gigaseconde le 2 octobre 2046 à 23 h 46 min 40 s.
On lit plus souvent le code qu'on ne l'écrit, et lire un nombre long au milieu d'un autre texte peut s'avérer délicat. Voici deux approches pour rendre les nombres plus lisibles :
Utiliser des tirets bas dans les littéraux numériques. 1_000_000 est plus lisible que 1000000, et 10_100_201_330 se parcourt plus facilement que 10100201330. Pour plus d'informations, voir PEP-0515.
Utiliser la notation exponentielle ou la notation scientifique. Le caractère e (ou E) suivi d'un entier représente la puissance de 10 par laquelle il faut multiplier le nombre qui précède le e (c.-à-d. : 1e6, 1 est multiplié par 10 élevé à la puissance 6, ce qui donne 1000000). Pour plus de détails, consulte cette référence sur la notation scientifique.
Cet exercice explore les objets du module datetime de Python :
Inscris-toi sur Exercism pour apprendre et maîtriser Python avec 17 concepts146 exercices, et un vrai mentorat humain, le tout gratuitement.