Exercices POO Classe Distance complete
🎉

Bravo!

Intermédiaire 🧠 Fondamentaux 20 XP 0 personnes ont réussi

Classe Distance complete

Maintenant que tu connais __add__ et __sub__, on va créer une classe plus complete. En plus d'additionner et soustraire des distances entre elles, on veut aussi pouvoir multiplier et diviser une distance par un entier.

Le piege, c'est que dans __mul__ et __truediv__, l'argument other sera un int, pas un objet Distance. Il faut donc utiliser other directement, pas other.valeur.

Tu peux vérifier le type avec isinstance(other, int). Si c'est un int, tu utilises other directement. Si c'est une Distance, tu utilises other.valeur.

Écris une classe Distance avec :
__init__(self, valeur)
__add__(self, other) : additionne deux distances
__sub__(self, other) : soustrait deux distances
__mul__(self, other) : multiplie par un entier
__truediv__(self, other) : divise par un entier
__str__(self) : renvoie 'Distance(X)'

Exemple :
d1 = Distance(6)
d2 = Distance(3)
str(d1 + d2) renvoie 'Distance(9)'
str(d1 * 2) renvoie 'Distance(12)'

Tests (3/4)

Addition
assert str(Distance(6) + Distance(3)) == 'Distance(9)'
Soustraction
assert str(Distance(6) - Distance(3)) == 'Distance(3)'
Multiplication par int
assert str(Distance(3) * 2) == 'Distance(6)'

+ 0 tests cachés

Indices (3 disponibles)

solution.py