Définitions
PPCM : Plus Petit Commun Multiple, c'est le nombre le plus petit qui soit divisible par un ensemble de nombres donné.
Par exemple, Le PPCM de 6 et 22 est 66. Le PPCM de 21, 6 et 14 est 42.
PGCD : Plus Grand Commun Diviseur, c'est le plus grand nombre qui divise un ensemble de nombres donné.
Par exemple, le PGCD de 6 et 22 est 2. Le PGCD de 21, 14 et 42 est 7.
Nombres premiers entre eux : on dit que deux nombres sont premiers entre eux si leur PGCD est 1. C'est à dire qu'ils n'ont aucun diviseur commun en dehors de 1 (qui lui divise tous les entiers).
Par exemple, 22 et 35 sont premiers entre eux, mais 22 et 99 ne le sont pas.
Calcul à partir de la décomposition en nombre premier
Les calculs du PPCM ainsi que celui du PGCD peuvent se faire à partir de la décomposition en nombre premier. Pour le PPCM on prend tous les nombres premiers présents dans la décomposition des nombres donnés avec leur plus grand exposant. Pour le PGCD, on prend les nombres premiers présents dans toutes les décompositions avec leurs plus petits exposants (attention aux subtilités de langage, ceux sont presque les mêmes mots, mais dans un ordre différent).
Prenons le cas particulier du calcul de PPCM et de PGCD pour deux nombres. Si on regarde la décomposition en nombres premiers des deux nombres, le PPCM est l'union des 2 décompositions et le PGCD est l'intersection des deux compositions (remarque valable aussi dans le cas général). Ceci implique que la multiplication du PPCM et du PGCD de deux nombres est le produit de ces deux nombres : on ne prend qu'une fois ce qui est à un seul des deux (uniquement dans le PPCM) et on prend 2 fois ce qui est dans les deux (qui est dans le PPCM et le PGCD). Donc si on trouve le PGCD (ou le PPCM) de deux entiers, on peut trouver le PPCM (ou le PGCD) en multipliant entre eux les deux entiers et en divisant le tout par le PGCD (ou le PPCM] : PPCM(A,B)=AxB/PGCD(A,B).
Algorithme de calcul
Il existe un algorithme simple permettant de trouver le PGCD de deux nombres. Je vais vous aider à le trouver.
Soit A et B deux entiers strictement positifs tel que A>B et C leur PGCD qu'on cherche.
Par définition C divise A et B, on peut donc écrire A=aC et B=bC (a=A/C et b=B/C). De part leur définition a et b sont premiers entre eux : leur PGCD est obligatoire 1, sinon, C n'est pas le PGCD de A et B.
Soit R le reste de la division de A par B : R=A-B.Q (1) avec R<B et Q entier (c'est la définition du reste de la division), soit r le reste de la division de a par b : r=a-b.q (2) avec r<b.
Comme a et b sont premiers entre eux, r l'est aussi car tout diviseur commun de r et b doit alors diviser a=b.q+r. Ce diviseur est alors unique et c'est donc 1. Ceci est valable tant que r n'est pas nul ! Ce dernier cas signifierait que b=1 et q=a, sinon b serait un diviseur commun de b et a plus grand que 1 ce qui contredit a et b premier entre eux.
Ces deux égalités (1) et (2) sont les seules vérifiant R<B, r<b, avec r, R, q et Q entiers positifs (le reste de la division est unique, on n'a qu'une possibilité pour r, R, q et Q).
Supposons r non nul. Si on multiplie (2) par C ceci donne rC=aC-bC.q=A-B.q. Ceci donne donc rC=R et q=Q grâce à l'unicité. Donc R est divisible par C, tout comme B. r et b étant premier entre eux, R et B ne peuvent donc pas admettre de diviseur plus grand que C. Donc le PGCD de R et B est toujours C. On peut recommencer cette manoeuvre avec cette fois B à la place de A et R à la place de B. On trouverait ainsi un reste (nouveau R) plus petit que l'ancien. On vient ainsi de fabriquer une suite décroissante (les R successifs) qui sont multiples de C. Cette deviendra constante lorsque...
Cette fois, on suppose que R=0, c'était donc que b=1, d'où C=B : on a trouvé C ! Notre suite de nombre R va donc décroittre petit à petit jusqu'à R=C puis restera constante à R=0.
Il reste donc à mettre cette idée sous forme d'algorithme, puis de programme. On calculera ainsi le PGCD de A et B. On en déduira donc leur PPCM par la formule : PPCM(A,B)=A.B/PGCD(A,B).
À vos crayons, puis à vos ordinateurs...
Pour tout bien vérifier, rajoutez à ce programme la décomposition en nombre premiers faîtes précédemment afin de donner la décomposition en nombres premiers A, B, le PPCM et le PGCD.
Pour l'exemple, calcul du PGCD et du PPCM de et , puis .