Home |
Logithèque |
HP42S
Multiplication de deux nombres par additions simples
Code
Le programme est listé de façon compacte.
LBL "MULT"
STO 00 X<>Y STO 01 0 STO 02
LBL 01 RCL 00 X=0? GTO 03 2 / IP STO 00
LAST X FP X=0? GTO 02 RCL 01 STO+02
LBL 02 RCL 01 STO+01 GTO 01
LBL 03 RCL 02
END
Tailles : 40 octets.
Mode d'emploi
Entrer les deux entiers à multiplier (inférieurs à 10^10) sur la pile.
Exécuter le programme. Le produit est affiché en fin d'exécution.
Mathématiques à l'oeuvre
On décompose de façon binaire l'un des nombres et pour chaque bit non nul on ajoute à un total le second nombre multiplié par 2 le nombre de fois correspondant au rang du bit. Bien sûr, on n'utilise pas de puissance mais dans la même boucle on double le second nombre.
En final, le total vaut le produit des deux nombres originaux.
Il est possible de poser ceci de façon simple sur papier.