next up previous contents index
suivant: Version itérative avec les monter: Identité de Bézout par précédent: Identité de Bézout par   Table des matières   Index

Version itérative sans les listes

L'algorithme d'Euclide permet aussi de trouver un couple U et V vérifiant:

A×U + B×V = PGCD(A, B)

En effet, si on note A0 etB0 les valeurs de A et de B du début on a :

A   = A0×U + B0×V  avec U = 1 et V = 0  
B   = A0×W + B0×X  avec W = 0 et X = 1  

Puis on fait évoluer ABUVWX de façon à ce que ces deux relations soient toujours vérifiées. Voici comment ABUVWX évoluent :
- on pose : A = B×Q + R   0 $ \leq$ R < B  (R = A mod B et Q = E(A/B))
- on écrit alors :

R = A - B×Q = A0×(U - W×Q) + B0×(V - X×Q) = A0×S + B0×T      
avec S = U - W×Q et T = V - X×Q      

Il reste alors à recommencer avec B dans le rôle de A (B->A W->U X->V) et R dans le rôle de B (R->B S->W T->X ) d'où l'algorithme:
fonction Bezout(A,B)
local U,V,W,X,S,T,Q,R
1->U 0->V 0->W 1->X
tantque B $ \neq$ 0 faire
A mod B->R 
E(A/B)->Q
//R=A-B*Q
U-W*Q->S
V-X*Q->T
B->A W->U X->V
R->B S->W T->X
ftantque
retourne {U, V, A}
ffonction

next up previous contents index
suivant: Version itérative avec les monter: Identité de Bézout par précédent: Identité de Bézout par   Table des matières   Index
Documentation de giac écrite par Renée De Graeve