problème fonction approx sous windows

Bugs

Modérateur : xcasadmin

ergibil
Messages : 9
Inscription : dim. juin 07, 2009 6:41 pm

problème fonction approx sous windows

Message par ergibil » sam. juin 13, 2009 11:43 pm

J'ai une question avec la fonction approx sous windows.

exemple 1
a:=approx(sqrt(2),7);
résultat :
1.41421356237
approx(a,2);
résultat :
1.41421356237
:?
exemple 2
a:=approx(sqrt(2),30);
résultat :
1.414213562373095048801688724209
approx(a,2);
résultat :
1.42
:)

bizarre cette différence de résultat pour approx(a,2) non ?

parisse
Messages : 5114
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Message par parisse » dim. juin 14, 2009 7:05 am

en effet, j'ai le meme probleme sous linux, ca semble etre un pb de conversion flottants longs->flottants machine, peut-etre dans MPFR, je regarderai demain.

parisse
Messages : 5114
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: problème fonction approx sous windows

Message par parisse » lun. juin 15, 2009 2:50 pm

Il semble que ca vienne d'un double arrondi en base 2/base 10. sqrt(2) est d'abord calcule avec 30 decimales (traduit en environ 100 bits de mantisse), puis arrondi mais en base 2 au plus proche avec 2 decimales (soit environ 8 bits de mantisse). C'est cette valeur qui est affichee ensuite en decimal d'ou l'arrondi surprenant.

Répondre