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 :

Arrondir � 2 d�cimales


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Par d�faut Arrondir � 2 d�cimales
    Bonjour � tous,

    pour obtenir un r�sultat de calcul arrondi � 2 d�cimales j'utilise l'instruction suivante :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    resultat=(Math.round(resultat*100))/100;
    n'existe-t-il pas quelque chose de plus direct ?

    comme par exemple en PHP :

    float round ( float val , int precision )

    Ou int precision permet de d�finir la pr�cision souhait�e.

    Merci d'avance pour vos r�ponses

  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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    ce qui m'etonne c'est que �a t'arrondisse � deux decimales ...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    resultat=(Math.round(resultat*100))/100;
    je ne vois le 2 nulle part ...

    il manque le ,2

    et cette methode permet de contourner le bug de la virgule flottante
    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 !

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Par d�faut
    Ha tu me parle malheureusement de quelque chose que je ne connais pas mais que j'aimerai bien connaitre

    pour ce qui concerne mon calcul, ben si �a m'arrondi � 2 d�cimales.

    Si j'ai par exemple resultat= 12.254789

    Math.round(resultat*100) = 1225

    divis� par 100 = 12.25

    Mais tu as l'air de me parler de quelque chose de mieux ?

  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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    regarde du cot� de toFixed toPrecision


    mais tu seras toujours confront� au probl�me de la virgule flottante sous javascript qui entraine parfois des resultats innatendus

    pour ton cas de figure il suffit de faire un prototype :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script type='text/javascript'>
    Number.prototype.toDecimal=function(precision){
     dec=10
     return  		Math.round(this*(Math.pow(10,precision))) /(Math.pow(10,precision));
       }
    var testo=12.53215682132
     alert(testo.toDecimal(4))  
     
     </script>

    a noter que par curiosit� j'ai coll� une precision negative et du coup �a arrondi � la dizaine, la centaine ...etc !
    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 !

  5. #5
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Par d�faut
    Merci de ta r�ponse SpaceFrog,

    Je vais effectivement faire un prototype

    d'autant qu'apr�s une explication un peu laborieuse sur prototype je vois mieux maintenant comment l'utiliser

    Merci encore

    PS pour voir mes probl�mes avec prototype :
    http://www.developpez.net/forums/d64...ype-prototype/


  6. #6
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Par d�faut
    J'ai regard� du cot� de tofixed() et c'est ce qu'il me faut pour afficher un r�sultat qui ne n�cessitera plus de calculs ult�rieur.

    Merci

    bonne fin de journ�e

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. arrondir valeur d�cimale
    Par jman94 dans le forum G�n�ral JavaScript
    R�ponses: 12
    Dernier message: 30/06/2010, 17h31
  2. [00] arrondir � trois d�cimal
    Par zandru dans le forum Macros et VBA Excel
    R�ponses: 2
    Dernier message: 17/12/2008, 09h23
  3. Arrondir � 2 d�cimales une variable
    Par Domino40 dans le forum VBA Word
    R�ponses: 4
    Dernier message: 26/11/2008, 15h44
  4. arrondir � une d�cimale
    Par tomas dans le forum Requ�tes et SQL.
    R�ponses: 1
    Dernier message: 05/11/2007, 15h19
  5. Arrondir � deux d�cimales
    Par sweety107 dans le forum Access
    R�ponses: 3
    Dernier message: 12/10/2005, 16h16

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