Il existe des méthodes de division très différentes selon les nombres à traiter. Pour les entiers, la méthode shift-and-subtract donnée par d'autres fonctionnera bien. Pour les nombres à virgule flottante, cependant, il peut être plus rapide de calculer d'abord l'inverse du dénominateur, puis de multiplier ce nombre par votre numérateur.
Le calcul de l'inverse du dénominateur n'est pas si mal; cela se fait en affinant les approximations successives. Soit g votre estimation pour 1 / d. Pour une estimation améliorée, utilisez g '= g (2-gd). Cela converge quadratique, vous doublez donc les chiffres de précision à chaque amélioration.
Exemple: calculer l'inverse de 3,5.
Votre estimation initiale est de 0,3. Vous calculez 0,3 * 3,5 = 1,15. Votre estimation ajustée est de 0,3 * (2 - 1,15) = 0,285. Déjà assez proche! Répétez le processus et vous obtenez 0,2857125, et un troisième essai obtient 0,2857142857.
Il existe des raccourcis. En virgule flottante, vous pouvez extraire des puissances de dix ou des puissances de deux, selon la base numérique de votre machine. Et, pour la vitesse au détriment d'une plus grande utilisation de la mémoire, vous pouvez utiliser une table pré-calculée pour les nombres dans la plage de 1 à b (où b est votre base numérique) pour obtenir une estimation qui est immédiatement proche de la réciproque requise et enregistrer une ou deux étapes de raffinement.
Gardez à l'esprit que, comme pour la multiplication et l'embarras de Kolmogorov en 1960 par son élève Anatoly Karatsuba, vous ne savez jamais quand une méthode plus rapide ou meilleure sera trouvée. N'abandonnez jamais votre curiosité.