Loading [MathJax]/jax/output/HTML-CSS/jax.js

L'algorithme d'Euclide pour déterminer le pgcd de deux entiers

icône de pdf
Signaler

La recherche du PGCD par la décomposition en facteurs premiers est souvent fastidieuse.
La division euclidienne permet une recherche algorithmique du PGCD, grâce au théorème suivant :

I. Théorème

Soient deux entiers non nuls a et b, avec ab, et r le reste de la division euclidienne de a par b.
Si r=0 alors ab=b sinon ab=rb.

Démonstration

On a a=bq+r.

Si r=0, alors a est un multiple de b et donc ab=b.

Si 1r<b, ab divise a et b, et par suite ab divise abq=r.

Par conséquent, il divise aussi rb.

De même rb divise r et b donc il divise a=bq+r.

Divisant a et b, il divise ab.

Puisque abrb et rbab alors ab=rb, avec r<ba.

Ce théorème permet d’obtenir un algorithme donnant le PGCD de deux nombres en un nombre fini d’opérations.

II. Un exemple de l'algorithme d'Euclide

Énoncé :

Déterminer le PGCD de 4505 et 1054.

Solution :

4505=4×1054+289 donc 45051054=1054289.

Appliquons de nouveau le théorème en effectuant la division euclidienne de 1054 par 289. Or 1054=3×289+187.

On a r=187 qui n’est pas nul donc 1054289=289187.

En réitérant la même procédure, on a 289=1×187+85.

Donc 289187=18785, puis 187=2×85+17.

Donc 18785=8517 et enfin 85=5×17. Dans cette dernière division euclidienne, le reste est nul donc 8517=17.

Finalement 45051084=17.

La procédure que nous venons d'appliquer s’appelle l’algorithme d’Euclide. Comme à chaque itération, l’un des deux nombres a et b diminue strictement, cet algorithme conduit au calcul du PGCD en un nombre fini d’opérations.

On peut présenter ces divisions dans un tableau où le diviseur et le reste d’une colonne deviennent respectivement le dividende et le diviseur de la colonne suivante :

Dividende

4505

1054

289

187

85

17

Diviseur

1054

289

187

85

17

0

Reste

289

187

85

17

0

Quotient

4

3

1

2

5

Le dernier reste non nul est 17.

45051084=17