Téléchargé 1 fois
Vote des utilisateurs
1
0
Détails
Licence : Non renseignée
Mise en ligne le 30 novembre 2010
Plate-formes :
Linux, Mac, Windows
Langue : Français
Référencé dans
Navigation
Calcul de la racine carrée d'un nombre
Calcul de la racine carrée d'un nombre
Ce code permet de calculer la racine carrée entière d'un nombre entier (>= 1) sans utiliser les flottants, en utilisant la méthode des approximations successives. Cette fonction est plus efficace que sqrt() avec gcc sans optimisations. Par contre, avec les optimisations, sqrt() écrase cette fonction. L'avantage principal est ici d'éviter d'utiliser les flottants et la bibliothèque mathématique et d'assurer une bonne vitesse de calcul sur les machines avec des co-processeurs faibles ou sans co-processeur.
Non, le résultat est correct :
1*1 = 1 <= 3
2*2 = 4 > 3
Donc le résultat attendu est bien 1.
Sinon, est-il possible de savoir comment la comparaison avec sqrt a été réalisée ?
Il me semble que le livre Hacker's Delight propose aussi une version de isqrt. Elle est semblable à celle-ci (i.e basé sur Newton), mais avec un choix de valeur initiale dépendant de la valeur d’entrée. J’aimerai bien évaluer jusqu’à quel point cela influe sur les performances.
Envoyé par Wikipédia
2*2 = 4 > 3
Donc le résultat attendu est bien 1.
Sinon, est-il possible de savoir comment la comparaison avec sqrt a été réalisée ?
Il me semble que le livre Hacker's Delight propose aussi une version de isqrt. Elle est semblable à celle-ci (i.e basé sur Newton), mais avec un choix de valeur initiale dépendant de la valeur d’entrée. J’aimerai bien évaluer jusqu’à quel point cela influe sur les performances.
Ce programme n'arrondit pas tres bien par ex pour 3 racine apres arrondissement doit donner 2 et non 1!!!!!
bonjour
peut tu expliquer ce programme
http://c.developpez.com/telecharger/...ee-d-un-nombre
je sais que la valeur de la racine de N est la limite de ca
rn+1 = (rn + N/ rn)/2
mais j'ai pas compris comment tu a trouver
r1 = (a + 1) / 2;
et aussi la boucle
peut tu expliquer ce programme
http://c.developpez.com/telecharger/...ee-d-un-nombre
je sais que la valeur de la racine de N est la limite de ca
rn+1 = (rn + N/ rn)/2
mais j'ai pas compris comment tu a trouver
r1 = (a + 1) / 2;
et aussi la boucle
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.