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 :

Précision nombre réel


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 21
    Points : 20
    Points
    20
    Par défaut Précision nombre réel
    Bonjour,

    Précision : je débute en JavaScript.
    Soit le code JavaScript suivant (que j'exécute dans un interpréteur en-ligne http://math.chapman.edu/~jipsen/js/) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var v1 = 0.2;
    var v2 = 0.1;
    writeln(v1*v2);
    Le résultat est :
    Soit le même code en C# (.NET) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    double d1 = 0.2;
    double d2 = 0.1;
     
    Console.WriteLine(d1 * d2);
    Le résultat est :
    Pourquoi le résultat est différent alors que j'ai cru comprendre que JavaScript codait les nombres réels en IEEE-754 sur 64 bits (comme .NET le fait avec le type "double") ?
    Encore plus étrange : même en utilisant le type "float" (donc sur 32 bits) en C# le résultat est aussi 0.02.

    Merci pour vos éclaircissements.

    PurL

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 21
    Points : 20
    Points
    20
    Par défaut
    A priori, c'est la fonction WriteLine de C# qui me joue des tours. En effet, dans le débogueur de Visual Studio, j'ai bien le même résultat qu'en JavaScript.

    Désolé du dérangement.

    PurL

  3. #3
    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 637
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Pour plus d'information sur le pourquoi, fais une recherche sur le forum avec "javascript virgule flottante"
    par exemple => https://www.developpez.net/forums/d6...at-javascript/
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. nombre réels -simple et double précision
    Par new_wave dans le forum Langage
    Réponses: 7
    Dernier message: 12/11/2009, 23h34
  2. Modifcation de la précision d'affichage d'un nombre réel
    Par developpeur82 dans le forum MATLAB
    Réponses: 2
    Dernier message: 13/04/2007, 12h33
  3. Réponses: 17
    Dernier message: 04/08/2005, 14h49
  4. Stockage d'un nombre réel
    Par vermo dans le forum Assembleur
    Réponses: 2
    Dernier message: 30/04/2005, 15h01
  5. Stocker un nombre réel
    Par julson dans le forum Assembleur
    Réponses: 2
    Dernier message: 01/04/2004, 08h59

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