Recursivite
Bonjour
Je viens au près de vous car j'ai du mal à concevoir des fonction récursive.
Si vous pouvez bien me proposé une fonction récursive pour ma fonction ci-dessous et aussi peut être m'explique le principe de la récursivité et aussi un conseil pour cela
Le code je l'ai écrit direct au clavier comprenez les espace ne le prennez pas en compte
Cette fonction est sensé me donner le plus grand diviseur d'un nombre
Je pense que c'est évident que sa sois lui même ce diviseur ????
Je viens au près de vous car j'ai du mal à concevoir des fonction récursive.
Si vous pouvez bien me proposé une fonction récursive pour ma fonction ci-dessous et aussi peut être m'explique le principe de la récursivité et aussi un conseil pour cela
Def pgd (n):
a=1
T=[ ]
While a <= n :
If (n%a == 0):
T+=[a]
a+=1
else:
a+=1
Return T [-1]
Le code je l'ai écrit direct au clavier comprenez les espace ne le prennez pas en compte
Cette fonction est sensé me donner le plus grand diviseur d'un nombre
Je pense que c'est évident que sa sois lui même ce diviseur ????
6 réponses
-
C'est un devoir de la fac
-
Voici selon moi un code récursive
Votre avis svp??
Def pgd (n):
a=0
T=[ ]
return pgdAux (n, a+1, T)
Def pgdAux ( n, a, T):
If a == n:
Return a
If n%a ==0:
T+=[a]
Return pgdAux (n,a+1,T) -
Oui oui
Mais j'essaye de trouver une autre façon de faire comme vous l'avez dit
Et je vous le transmet -
J'arrive pas à comprendre quand on dit méthode décroissante pourrez vous m'expliquer
-
L'énoncé est de donner un algorithme capable de donner le plus grand diviseur d'un nombre par la méthode décroissante (perso j'ai comprend ce qu'il veut dire par méthode décroissante )
J'ai fais un algorithme qui donne le plus grand diviseur et maintenant on nous demande d'en faire une fonction récursive -
Contributeurbonjour, il est souvent préférable, pour découvrir comment appliquer la récursivité, de ne pas partir d'un programme, mais de réfléchir au problème.
as-tu déjà appliqué la récursivité à d'autres problèmes?
quel est l'énoncé exact de ton exercice?
réfléchis à plusieurs techniques que tu pourrais utiliser si tu devait chercher le plus grand diviseur d'un nombre, et que tu disposes d'une feuille et d'un crayon.