Partition d'un nombre entier
Bonjour,
Je cherche à créer sous python un algorithme permettant de donner les n combinaisons pour arriver à un nombre entier à partir de trois valeurs :
50, 20 et 10.
Par exemple, si je tape 50, l'algorithme doit me donner toutes les possibilités d'arriver à 50 avec mes trois valeurs :
50 ou 2 fois 20 + 10 ou 1 fois 20 + 3 fois 10 ou 5 fois dix etc.
Si je saisis 100, l’algorithme devra me donner toutes les combinaisons possible :
2 fois 50 ou 4 fois 20+ 2 fois 10 etc..
J'ai commencé un bout de code mais cela ne fonctionne pas.
Pouvez-vous m'aider s'il vous plait ?
Merci par avance.
Code:
1 2 3 4 5 6 7 8 9 10
| sommeVoulue=int(input("Donner la somme voulue: "))
somme=sommeVoulue # on utilise une variable somme qui va stocker au fur et à mesure
cinquante=somme//50 #la somme restante après utilisation des billets
somme=somme%50
vingt=somme//20
somme=somme%20
dix=somme//10
somme=somme%10
print("pour la somme de %i euros, il faut : %i billets de 50, "%(sommeVoulue,cinquante),end=" ")
print("%i billets de 20, %i billets de 10," %(vingt,dix),end=" ") |