Bonjour, je me permets de demander un peu d'aide concernant un petit programme en python que je suis sensé effectuer mais je débute donc j'ai un peu de mal.
On me demande de programmer la fonction nommée Euclide renvoyant le pgcd entre deux nombres a et b (seulement la fonction et non pas le programme entier demandant a,b, les conditions sur a et b etc...).
Pour ceci on me décrit la méthode:
Soit a et b, deux entiers positifs. On construit euclide (n) telle que:
-euclide(0)=a et euclide (1)=b
-euclide(n+1)=euclide(n-1) mod euclide(n)
Le dernier terme non nul de la suite est le pgcd entre a et b.
Voici mon programme :
Code:def euclide(n): if n==0: return a elif n==1: return b else: return euclide(n-2)%euclide(n-1) #même chose que l'énoncé je pense mais avec une égalité pour euclide(n) au lieu de euclide(n+1) n=0 n=n+1 if euclide(n)==0: print 'le pgcd est : ',euclide(n-1)
Le problème est que le calcul de la fonction ne se met pas en route et je ne sais pas quoi rajouter de plus que n=n+1....
-----