On s'intéresse dans cet exercice à une classe Duree
permettant de manipuler une durée exprimée en heures, minutes et secondes.
Un objet de type Duree
est instancié en indiquant les heures, les minutes et les secondes nécessaires.
Les secondes et les minutes d'une durée doivent être strictement inférieures à 60
. Lors de l'instanciation les valeurs passées en paramètres doivent respecter cette règle.
La méthode en_secondes()
renvoie la durée correspondante exprimée en secondes. Cette méthode calcule et renvoie la durée exprimée en secondes mais ne modifie pas les valeurs des attributs heures
, minutes
et secondes
.
Les méthodes ajoute_minutes
et ajoute_secondes
permettent d'ajouter respectivement un nombre de minutes ou de secondes positif ou nul passé en paramètre. Si, après l'addition, les minutes (ou les secondes) de l'objet dépassent 59
, on doit les convertir en heures (ou en minutes).
La méthode __repr__()
est une méthode native qui est appelée lorsque l'on souhaite afficher une représentation de l'objet (dans la console le plus souvent). Dans le cas présent, cette méthode est aussi appelée lorsque l'on souhaite convertir un objet de type Duree
en une chaine de caractères (par exemple, lors de l'appel de la fonction print
). Cette méthode renvoie une chaine de caractères sous la forme "hh:mm:ss". Par exemple, pour un objet initialisé avec les valeurs 3 h, 20 min et 2 s, la méthode renvoie '3:20:2'
Compléter le code ci-dessous :
d'après
https://codex.forge.apps.education.fr/