calculer
multiplier sans le signe *
Addition répétée : on ajoute a à un total, b fois.
Exemple : multiplier(6, 4) → 6+6+6+6 → 24
diviser sans le signe /
Soustractions répétées : on retire b à a tant que c’est possible (division euclidienne : quotient et reste).
Exemple : diviser(17, 5) → (3, 2) car 17 = 5×3 + 2
PGCD euclide
Le PGCD de a et b est égal au PGCD de b et a % b. On répète jusqu’à obtenir un reste nul. Cette méthode repose sur la propriété suivante:
S’il existe un diviseur commun pour a et b, alors ce diviseur est aussi commun à a, b et a-b. Donc également à a%b:
Exemple : pgcd(48, 18) → 48%18=12 → 18%12=6 → 12%6=0 → PGCD = 6
Méthode de Horner
La factorisation de Horner:
Supposons que l’on ait à convertir le mot binaire $1110$ en décimal, ou plus généralement $b_0 b_1 b_2 b_3$ en décimal:
\(b_{0}\cdot 2^{3}+b_{1}\cdot 2^{2}+b_{2}\cdot 2^{1}+b_{3}\cdot 2^{0}\)
On peut factoriser par 2 au fur et à mesure :
\(=\left(b_{0}\cdot 2^{2}+b_{1}\cdot 2^{1}+b_{2}\right)\times 2+b_{3}\) \(=\left(\underline{(b_{0}\times 2+b_{1})}\times 2+b_{2}\right)\times 2+b_{3}\)
On devine la structure de suite recurence pour la suite :
- Le premier bloc souligné \(\underline{(b_{0}\times 2+b_{1})}\), c’est votre étape \(u_{2}\).
- Pour passer à la suite, on prend ce bloc, on le multiplie par 2, et on ajoute le terme suivant.
C’est exactement la définition de \(u_{n+1} = 2u_n + b_{n+1}\).
On peut alors proposer le programme suivant:
ou bien: