IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flex Discussion :

Problème étrange d'addition de deux Number


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2002
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 53
    Par défaut Problème étrange d'addition de deux Number
    Bonjour,

    je suis tombé sur quelque chose d'assez étrange en additionnant bêtement 2 nombres.
    Le résultat ne semble pas correct

    Par exemple si j'additionne 2050.76 avec 1000.44 j'obtiens : 3051.2000000000003 et non 3051.2

    Illustration via ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
     
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" viewSourceURL="srcview/index.html">
     
    	<mx:Script>
        	<![CDATA[
            	private function calc():void {
                	var a:Number = 2050.76;
                   	var b:Number = 1000.44;
     
                  	var total:Number = a + b; //total = 3051.2
     
                    lbl.text = total.toString(); //shows 3051.2000000000003 ?!
             	}
        	]]>
       	</mx:Script>
     
    	<mx:Button label="Show total" click="calc()"/>
    	<mx:Label id="lbl"/>
     
    </mx:Application>
    Quelqu'un pourrait-il m'expliquer ce phénomène étrange et comment y remédier ?

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    793
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2009
    Messages : 793
    Par défaut
    "It makes me nervous to fly an airplane since I know they are designed using floating-point arithmetic." Anton Householder

    Extrait de :
    http://www.arcanapercipio.com/lesson...s_nombres.html

    Très beau document...

  3. #3
    Membre averti
    Inscrit en
    Avril 2002
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 53
    Par défaut
    Citation Envoyé par jylaxx Voir le message
    "It makes me nervous to fly an airplane since I know they are designed using floating-point arithmetic." Anton Householder

    Extrait de :
    http://www.arcanapercipio.com/lesson...s_nombres.html

    Très beau document...
    Merci très intéressant.
    Sympa la citation

    En fait j'ai remarqué que j'avais le même phénomène en Java.
    Donc en effet ça n'est pas Flex le fautif

  4. #4
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Bonjour,

    Avec toFixed( ) sans doute

    Exemple :
    var total:Number = 3051.2000000000003 ;
    trace(total.toFixed(2)); // 3051.20

  5. #5
    Membre averti
    Inscrit en
    Avril 2002
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 53
    Par défaut
    Citation Envoyé par alain31tl Voir le message
    Bonjour,

    Avec toFixed( ) sans doute

    Exemple :
    Oui ç'est ce que j'ai fais finalement, merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [jsp] addition entre deux valeurs recupérées en Java
    Par LESOLEIL dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 07/06/2005, 13h19
  2. [Math]Addition de deux float : résultat faux !!!
    Par toctof dans le forum Général Java
    Réponses: 4
    Dernier message: 20/05/2005, 11h02
  3. [VB.NET] Problème étrange lors de la création de BDD
    Par Playmo dans le forum Windows Forms
    Réponses: 5
    Dernier message: 28/03/2005, 22h25
  4. [JMF] Problème étrange probablement dépendant de l'OS
    Par Farias dans le forum Multimédia
    Réponses: 4
    Dernier message: 31/10/2004, 17h35
  5. [FLASH MX2004 PRO] Problème étrange avec LoadClip...
    Par josemoroide dans le forum Flash
    Réponses: 6
    Dernier message: 04/08/2004, 15h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo