Calcul exact de la racine carrée d'un entier en Python
Déterminer la racine carrée exacte d'un entier est une tâche courante en programmation. Bien que la fonction math.sqrt de Python fournisse une approximation à virgule flottante, elle n'offre pas d'équivalent entier.
Solution de bibliothèque standard
Depuis Python 3.8, les mathématiques. La fonction isqlt a été introduite pour fournir une racine carrée entière exacte. Il calcule efficacement la racine carrée entière, garantissant un résultat exact.
Méthode de Newton
Une approche établie pour trouver la racine carrée entière est la méthode de Newton. Il améliore de manière itérative une supposition initiale grâce à la formule :
<code class="python">y = (x + n / x) // 2</code>
où x est la supposition actuelle et n est l'entier d'entrée. La méthode converge rapidement, fournissant une racine carrée entière précise.
<code class="python">def isqrt(n): x = n y = (x + 1) // 2 while y < x: x = y y = (x + n // x) // 2 return x</code>
Algorithmes alternatifs
Outre la méthode de Newton, il existe plusieurs autres algorithmes de calcul de racine carrée entière, comprenant :
Conclusion
La racine carrée entière est une opération essentielle dans diverses applications de programmation. La fonction math.isqrt de Python fournit une solution pratique et efficace, tandis que la méthode de Newton propose une approche alternative. En tirant parti de ces techniques, les programmeurs peuvent déterminer avec précision les racines carrées entières dans leur code Python.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!