Glouton recursif

ivche Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
quelqu'un peut-il corriger ce programme? il semble que c'est simple, mais je n'y arrive pas. Merci à vous.

S=[500,200,100,50,20,10,5,2,1]

def rendu_recur(somme,S,p_rendues=[],ind=0):
p_rendues=[]
if somme == 0:
return p_rendues
elif S[ind]<=somme:

return rendu_recur(somme=somme-S[ind],S,p_rendues.append(S[ind]),ind=1+ind)
elif ind == len(S)-1:
return-1
else:
somme-=S[ind]
return rendu_recur(somme,S,p_rendues.append(S[ind]),ind=1+ind)
print(rendu_recur(812,S,p_rendues))
A voir également:

5 réponses

Utilisateur anonyme
 
Bonsoir

en python l'indentation est essentielle, pour la conserver sur le site il faut faire comme décrit là
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
bonjour, n'oublie pas non plus de décrire les défauts de ton programme: pourquoi le corriger?
0
ivche Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
S=[500,200,100,50,20,10,5,2,1]

def rendu_recur(somme,S,p_rendues=[],ind=0):
if somme == 0:
return p_rendues
elif S[ind]<=somme:
return rendu_recur(somme=somme-S[ind],S,p_rendues.append(S[ind]),ind=1+ind)
elif ind == len(S)-1:
return-1
else:
return rendu_recur(somme-=S[ind],S,p_rendues.append(S[ind]),ind=1+ind)
print(rendu_recur(812,S,p_rendues))

ce n'est pas du tout un problème d'indentation.
Si vous voulez m'aider, copiez le dans python et vous verrez.
Merci.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
n'oublie pas non plus de décrire les défauts de ton programme: pourquoi le corriger?
0
ivche Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Quand on valide sur le site, il conserve pas l'indentation. Mais ceci se ressoud rapidement dans python.
Si ce n'était que ça?
0
Utilisateur anonyme
 
On ne peut pas copier le code tant tu ne l'as pas indenté....
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Bonjour,

On ajoute les balises de code Python et quand on valide, on voit ça:

def test():
    print('test')

test()
0