.. calculatrice (en javascript)

intro

Que demande-t-on à une calculatrice ?
Savoir faire une addition, une soustraction ... (et parfois un peu plus)
Pourtant la plupart des calculatrices écrites en javascript (ou autre langage) nous livrent des résultats parfois surprenant.

la raison:
"le problème de l'arrondi"

ok

en cherchant bien
www.megaconverter.com ... megacalculator (long au démarrage)
www.periodni.com/scientific_calculator.html avec tous les détails ****
www.ktf-split.hr/periodni/calc4chem.html
www.calculator.org/jcalcfaq.html la version javascript de jCalc98
Calculator JCalc98 (copie ici de la v. 04/2004)

bug

le bug n'est pas tout de suite visible

L'addition:
    1   +  1      =  2       correct
   10   + 25      = 35       correct
    1.5 +  2.2    =  3.7     correct
mais si l'on teste:
   0.15 +  0.015  =  0.165   ou 0.16499999999999998 
  17.99 + 21      = 38.99    ou 38.989999999999995 
  17.98 + 21      = 38.98    ou 38.980000000000004  

   1.98 + 1.98 + 1.98 = 5.94 ou 5.9399999999999995 
   2.98 + 2.98 + 2.98 = 8.94 correct
même problème pour la soustraction:
  0.15  -  0.015  =  0.135
  0.135 -  0.15   = -0.015   ou -0.014999999999999985
 16.97  - 22      = -5.03    ou -5.030000000000001
 16.67  -  4      = 12.67    ou 12.670000000000001
 
 0.4 - 0.3 - 0.1  = 0        ou 2.77556E-17
                    src: keisan.casio.com (1)
ou la multiplication
  1.1  *  1.1     =  1.21    ou 1.2100000000000001
La raison !! l'arrondi
chercher également "floating point", "binaire"

presque toutes les calculatrices:

www.aa.nps.navy.mil/~jones/online_tools/ calculator/
javascript.internet.com/calculators/win-calculator.html
www.ericweb.com/calc.html
www.motionnet.com/calculator
entrer "0.00"... est également impossible chez eux (comme d'autres) !

même les payantes:
www.softcomplex.com/products/ tigra_calculator_pro/

explication

enfin une explication (à propos de l'arrondi)!

... en allemand:
www.dcljs.de/faq/antwort.php?Antwort=rechnen_rechnen

... en anglais:
www.merlyn.demon.co.uk/js-maths.htm
support.microsoft.com kb:Q145/8/89

... en francais:
serge.mehl.free.fr/anx/arrondis_ordi.html
www.sciences-en-ligne.com/momo/chronomath/ anx1/arrondis_ordi.html 10/2005 broken!
www.sciences-en-ligne.com/momo/chronomath/ base/index_java.html


(1) ok maintenant!!