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

JavaScript Discussion :

Pb arrondi dans une formule de calcul


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 91
    Points : 57
    Points
    57
    Par défaut Pb arrondi dans une formule de calcul
    Bonjour,

    J'ai un petit souci avec des arondis dans des formules de calcul et je ne comprends vraiment pas d'ou vient le pb. J'utilise IE 6.0.

    J'ai la formule suivante :
    Formule 1 : Solde - ( somme des crédts - somme des débits )

    qui peut également s'écrire
    Formule 2 : Solde - somme des crédits + somme des débits


    Mes débits et mes crédits ont tout le temps au maximum 2 décimales.

    Si je prends un exemple concret, j'obtiens 2 résultats différents
    Form 1.
    121.95 - ( (121.95 + 129) - (10.00) ) donne - 118.999999

    Alors qu'avec le formule 2
    121.95 - ( 125.95 + 129 ) + 10 j'obtiens - 119

    Je ne comprends pas pourquoi j'obtiens 2 résultats différents sachant que c'est le 2ième qui est correct. Cependant dans certains cas c'est l'inverse qui ce passe. c à d que j'obtiens le résultat précis avec la formule 1 et un arrondi avec la formule 2.
    Est ce que le pb vient de IE ? ou est ce purement javascript et comment puis je le règler ?
    Merci par avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    ajoute un petit toFixed ...

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 91
    Points : 57
    Points
    57
    Par défaut
    le ToFixed fait un formattage de la chaine de caractère en faisant un arrondi Ok, mais cela ne m'explique pas la différence entre les 2 calculs !!!
    Pourquoi dans un cas j'ai la valeur exact et dans l'autre une valeur arrondi à 0.000...001 près.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    c'est javascript avec ses erreurs de virgules flottantes ...

    un cas d'école :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    num = 162.295
    num *= 100 // 16229.499999999998
    num = Math.round(num) // 16229
    num /= 100 // 162.29

    Certains browser ne retournent pas ces erreurs ...

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 13/04/2013, 15h25
  2. [XL-2007] Référence à un nom d'onglet dans une formule de calcul
    Par FXdeCadix dans le forum Excel
    Réponses: 2
    Dernier message: 19/05/2010, 17h17
  3. textbox dans une feuille de calcul dont la valeur est une formule
    Par nianko dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/11/2008, 12h43
  4. utiliser une variable dans une formule de calcul
    Par alainb dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/11/2008, 14h23
  5. [VBA-E] Copier une formule de calcul dans toute la ligne
    Par kernel57 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/12/2005, 18h18

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