Bonjour,
Connaissez-vous des "astuces" pour calculer rapidement la racine d'un nombre?
-----
Bonjour,
Connaissez-vous des "astuces" pour calculer rapidement la racine d'un nombre?
Avec le développement en série entière, mais je ne sais pas si c'est vraiment "rapide" (Autour de 1, ça doit converger assez rapidement quand même).
Et puis c'est pas vraiment une astuce !
Faudrait se renseigner comment ils font dans les calculettes ...
Marc
Faudrait se renseigner comment ils font dans les calculettes ...
Pour être plus précis, je cherche un moyen de trouver rapidement et sans calculatrice la racine d'un nombre (seulement pour les racines où le résultat est entier) .
LA memoire!!! :P
Tu dois avoir une mémoire éblouissante, Jarod!!!
La mémoire n'est pas suffisante pour les nombres importants. Par exemple, pour trouver la racine de 6889, tu fait comment
Ouais je sais c'est ce que l'on me dit tous le temps .Tu dois avoir une mémoire éblouissante, Jarod!!!
Non,sérieusement j'ai entendu à la radio ,sur europe 1 le dimance de 13h15à14h00 avec Alain Sirou,un gars que l'on appelle un calculateur prodige et qui en 4ans a appris à faire des calculs de fou comme racine de 6889 .Et lorsque que on le passait dans un IRM ou IRMN,(Oula j'ai petit trou de mémoire soudain ),bref on voyait que ça mémoire à long termes travaillé contrairement à nous ou il y avait seulement la mémoire "normal"(en fait il apprends des sortes de méthodes de calcul)
Et bah vala
Quand tu disais la mémoire, je crois que tu n'a pas tellement tort...du moins pour les entiers. Ensuite, pour les nombres dont le résultat est irrationnel, il suffit de faire des calculs .
Mais je pensait que pour les entiers, il y avait une astuce...
Je ne vois pas ce qu'il y a de drôle ?Envoyé par JarodFaudrait se renseigner comment ils font dans les calculettes ...
En effet, les calculettes ne savent que faire des additions et soustractions, et non les racines carrées. Pour les fonctions spéciales (comme le log, les sinus ou les racines), elles doivent donc utiliser des formules approchées, ou alors des tables (mémoire) et interpoler.
Toutefois, ça ne répond pas à la question pour les carrés d'entiers, ce que cherche en fait rm1
Marc
Cela pourrait toutefois éclaircir la réponse...Toutefois, ça ne répond pas à la question pour les carrés d'entiers, ce que cherche en fait rm1
Pour information, l'ordinateur et la calculatrice ont tout deux la même méthode de calcul.
Par conséquent, quelqu'un pourrait t-il déchiffrer, si possible, le code de la calculatrice windows (ou autre).
salut !
Pour la calculatrice, son fonctionnement n'a rien de mystérieux !
Pour tous les calculs, cela se passe en BINAIRE (soit 0 soit 1). Pour aditionner 2 + 2, on fait :
10
+10
______
=100
Quand on fait la conversion, binaire - > Décimal, on a %100 = 4 décimal.
Pour les multiplication, et pour les divisions, cela se fait par décalage des bits, mais je ne saurais pas l'expliquer.
Pour le reste, c'est en effet des approximations, on des valeurs mémoires.
amitiés
Bonjour,
En fait les valeurs des logarithmes et des fonctions trginonométrique ne sont absolument pas en mémoire dans la machine, cela requererait une mémoire bien trop importante que pour les stocker.
À ma connaissance une des première méthode de calcul utilisée pour cacluler ces valeurs est tout simplement le développement en série :
Sin X=X<sup>1</sup>/1!-X<sup>3</sup>/3!+X<sup>5</sup>/5!-X<sup>7</sup>/7!+....+(-1)<sup>n</sup>(x<sup>2n+1</sup>)/(2n+1)!
Ce développement contient autant de termes que nécessaire pour obtenir un résultat précis en fonction de l'affichage de la machine (généralement 2 ou 3 chiffres de plus que ce que l'afficheur permet).
Je n'ai donné qu'un exemple, il existe des séries similaires pour toutes les fonctions trigonométriques ou logarithmiques.
Pour voir les formules que je n'ai pas envie de recopier (et surtout encoder).
Je ne puis affirmer que c'est cette méthode qui est actuellement utilisée dans les machines, mais c'en est une de possible.
Il doit, sans doute, en exister d'autres.
Damon
Un EeePc ça change la vie !
Je viens de tomber, par hasard, sur ce site: http://rigolmath.free.fr/racine/comment.htm.
Cette méthode de calcul, que je ne connaissais pas auparavent est assez interressante. (Même si elle est un peu longue. )
salut,
j'ai une méthode (connue) de calcul par récurence qui, comme vous savez, convient parfaitement aux ordinateurs.
On cherche la racine x d'un nombre a. On va appeler x(i) la racine calculée à la ième itération. On s'arrête lorsque la différence entre 2 calculs est inférieure à la précision que l'on veut atteindre
x(i+1) = (x(i) + a/x(i)) / 2
Pour démarrer on peut prendre x(1) = a.
A+
Pour calculer algorithmiquement une valeur approchée d'un nombre x qui vérifie une équation du type f(x)=0 on a tout plein de possibilités.
Les plus utilisées sont la méthode de Newton et la méthode du point fixe.
La méthode du point fixe demande que autour de x, f vérifie
d(f(u),f(v))<d(u,v) pour tout u v
Si f est dérivable celà est équivalent à dire que |f'|<1 (autour de x)
C'est ce qu'on appelle une contraction.
Dans ce cas, on peut créer une suite (Xn) qui converge vers x (la démo n'est pas très compliquée) telle que
x(n+1)=x(n)-f(x(n))
l'autre, la méthode de newton, suppose que f est de classe C1 au moins, et on pose la suite
x(n+1)=x(n)-f'(x(n))/f(x(n))
Les problèmes de ce genre de méthode est qu'en général on ne sait pas bien lorsqu'elles vont marcher ou pas (sauf si on étudie à la main la fonction par exemple, mais la calculette ne s'amuse pas à le faire...)
Oui Newton, par exemple mais ...
Pour avoir racine(a) l'astuce est de trouver f tq l'évaluation de f(x) ne demande pas de connaitre racine(a).
( c'est un peu évident mais bon, ... )
x²-a par exemple. f(x)=0 pour racine(a) et -racine(a).
Reste à partir d'un x0 positif et ca va converger vers racine(a).
Exemple pour racine(2) ( 1.41421356 )
f(x)=x²-2
Je prend x0 = 1.5 qui est un estimation de la racine (1.5² = 9/4 = 2.25)
f(3/2)=0.25
La tangente : f'(x)=2x
f'(3/2)=3
On calcul x1 => x1=x0-f(x0)/f'(x0)=3/2-0.25/3=17/12=1.4166666.....
Et on continue Enfin si on veut parce que là on a déjà une bonne approximation.
f(x1) = 289/144-2 =1/144
f'(x1)= 17/6
x2 = 17/12 - (1/144 / 17/6)
x2 = 17/12 - 6/2448 = 17/12 - 1/408
1/408~=0.002451
x2 = 1.41421569
Le tout est de choisir un bon X0.
Remarque : c'est un bon algo numèrique, mais il demande justement des calculs numériques. Pour un calcul "de tête" on ne pourra pas faire bcp mieux qu'une itération.
L'avantage c'est que si l'approximation initiale est bonne, la première itération donne un bon résultat.
Ah et autre remarque pour Quinto.
Newton marche tres bien pour calculer une racine, puisque c'est ici son problème.
Si on cherche racine n-ième de A, la fonction f est simple à évaluer :
f(X) = X^n - A
Et pour ces fonctions, newton "fonctionne" bien.
La dérivé est aussi simple à calculer.
La méthode par récurrence est pas mal non plus mais si elle est plus "simple" (pas de puissance à calculer) il faut plusieurs itérations et finalement la difficulté réside dans le calcul de fractions.
j'ai fait un peu d'analyse numérique en info il y a quelques temps (c'est loin tout ça). Si je me souviens bien, il y a aussi la méthode de Bairstow qui permet de trouver des racines complexes.
Cependant, je crois que la question de départ concernait plutôt la recherche de la racine carrée d'un nombre.
A+
Bonjour,
Il semble que les anciennes machines à calculer faisait comme ça:http://www.haypocalc.com/manuel/1.5/fct/sqrt.php
http://www.haypocalc.com/manuel/1.6/fct/sqrt.php
J'oubliais, il y a de nombreuses années (dans ces temps reculés la calculatrice était interdite à en classe), j'avais appris comme ça...http://www.sciences-en-ligne.com/mom...no1/Heron.html voir en bas de la page
Maintenant, je me sers d'une calculatrice et je ne sais plus le faire.
Rappelons l'algorithme de l'extraction de la racine carrée que l'on enseignait autrefois "à l'école" :
poser une division, placer N "en dividende";
découper le nombre N en tranches de deux chiffres à partir de la droite;
prendre la racine carrée R du plus grand carré contenu dans la 1ère tranche (de gauche);
inscrire R à droite "en diviseur";
prendre la carré de R, le soustraire à la tranche; placez le résultat S sous la tranche;
abaisser la tranche suivante à la droite de S : on obtient un nombre D;
doubler la racine et la placer "en quotient" Q;
placer à droite de Q le plus grand chiffre u possible de sorte que le nombre obtenu multiplié par u n'excède pas D;
placer u à droite de R : on obtient la nouvelle valeur approchée de R;
poursuivre l'algorithme en reprenant au point n°6. Ne pas oublier la virgule lorsqu'on abaisse des tranches nulles 00.
Calculons la racine carrée de 7654321 : 22 = 4 < 7 < 32 = 9 : la racine commence par 2
7|65|43|21 2766,6...
365 47 * 7 = 329
329
---- 546*6 = 3276
3643
3276
----- 5526*6 = 33156
36721
33156
------- et il y va encore 6 !!!
356500
Bonjour, je suis en 3 ème et j'ai un problème avec un de mes exercices de maths. Donc je cite: On donne E= (2x - 3)(x + 2) - 5(2x - 3)
1.Développer et réduire E.
2.Factoriser E.
3.Calculer E pour x = -2.
4.Résoudre l'équation (2x - 3)(x - 3) = 0
Merci si vous pouviez m'aider.