On s'intéresse au problème du rendu d'une quantité somme_a_rendre de monnaie.
On suppose qu'on dispose d'un nombre infini
de billets de 5 euros,
de pièces de 2 euros
et de pièces de 1 euro.
Le but est d'écrire une fonction nommée rendu dont le paramètre est un entier positif somme_a_rendre qui renvoie un tuple de trois entiers qui correspondent aux nombres de billets de 5 euros de pièces de 2 euros et de pièces de 1 euro à rendre afin que le total rendu soit égal à somme_a_rendre, avec le moins de billets et de pièces possible.
On commencera par rendre le nombre maximal de billets de 5 euros, puis celui des pièces de 2 euros et enfin celui des pièces de 1 euro.
Exemples
Pour rendre 7 €, on rend 1 billet de 5 €, 1 pièce de 2 € et 0 pièce de 1 €.
>>> rendu(7)(1, 1, 0)
Pour rendre 10 €, on rend 2 billets de 5 €.
>>> rendu(10)(2, 0, 0)
Pour rendre 13 €, on rend 2 billets de 5 €, une pièce de 2 € et une pièce de 1 €.
>>> rendu(13)(2, 1, 1)
Pour rendre 32 €, on rend 6 billets de 5 € et une pièce de 2 €.
>>> rendu(32)(6, 1, 0)
Opérateurs de la division entière
L'opérateur // permet de calculer la division entière entre deux nombres entiers, à savoir le quotient de leur division euclidienne.
>>> 10//42
L'opérateur % permet de trouver le reste de la division entière entre deux nombres.
>>> 10%31
###(Dés-)Active le code après la ligne # Tests (insensible à la casse) (Ctrl+I)
Entrer ou sortir du mode "deux colonnes" (Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran" (Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)