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 :

division en javascript


Sujet :

JavaScript

Vue hybride

djonky51 division en javascript 23/04/2006, 13h06
djonky51 personne ne voit? :cry: 23/04/2006, 21h03
Swoög sûrement un bug dans le... 23/04/2006, 21h17
kalash_jako Essaye avec une autre... 23/04/2006, 21h41
djonky51 cela ne change pas grand... 23/04/2006, 22h55
SpaceFrog il s'agit bien d'un problème... 24/04/2006, 09h03
djonky51 Bonjour j ai testé ta... 24/04/2006, 10h29
SpaceFrog ben je sais pas ce que tu... 24/04/2006, 10h33
djonky51 oui en effet le resultat est... 24/04/2006, 10h51
djonky51 merci ça marche niquel... 24/04/2006, 10h55
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 9
    Par défaut division en javascript
    Bonjour

    question concernant l operation divison en javascript
    pk lorsque je fais :
    Code : JavaScript

    alert ("resulat de la divison est :"+(48.3/16.1));
    alert ("resulat de la division est :"+(64.4/16.1));




    le premier me donne un resultat de 2.99999999 alors que chacun sait que ça fait 3 et que ça tombe juste
    et que pour le deuxieme alert cela fonctionne et renvoie 4 et non 3.9999 par exemple
    pouvez vous m aider car j en ai besoin pour l incrementation d un compteur toutes les 16.1 secondes par exemple ( j utilise un test du genre var%16.1==0 alors incrementer

    merci




    merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 9
    Par défaut
    personne ne voit?

  3. #3
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    sûrement un bug dans le module d'arithmétique flotante pour le moteur JavaScript de ton browser
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 224
    Par défaut
    Essaye avec une autre navigateur pour vérifier ce que dit Swoog, et test avec une valeur entière.

    Bizare quand même

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 9
    Par défaut
    cela ne change pas grand chose que je sois sours IE ou firefox
    merci qd meme

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 224
    Par défaut
    Et avec des valeurs entières?

  7. #7
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    il s'agit bien d'un problème d'interprétation de la virgule flottante par javascript en fonction du browser ...


    voici une petite focntion pour obtenir le bon résultat...
    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
     
    <script type='text/javascript'>
    function ExactRound(a,b,e){
    a=String(a)
    b=String(b)
    var deci=( a.split('\.')[1].length > b.split('\.')[1].length )?a.split('\.')[1].length:b.split('\.')[1].length;
    var c= Number(a) + Number(b);
    var expo= (Math.pow(10,deci))
    var result=((Math.round(c*expo)/expo).toFixed(e));
    return result;
    }
    </script>
     
    </head>
     
    <body>
    <script type='text/javascript'>
    alert(ExactRound(70.8021,86.104,4))
    </script>
    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 !

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 9
    Par défaut
    Bonjour

    j ai testé ta fonction la et avec ton calcul ( 70.8021, 86.104, 4)
    j obtiens un resultat de 156.9061
    un peu bizarre comme resultat nan? ou ça vient de moi ?


    merci en tout cas

  9. #9
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    ben je sais pas ce que tu attend d'une addition de 70.8021 + 86.104 arrondi à 4 chiffres après la virgule ...
    pour moi le résultat est correct ...

    ..70.8021
    +86.104
    =======
    156.9061
    non ?
    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 !

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 9
    Par défaut
    oui en effet le resultat est bon
    j étais depuis le debut dans une operation de divison ou de modulo
    donc oki ça va mieux
    désolé c est moi qui est buggé la

    simplement changer le signe dans ta fonction alors
    merci

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 9
    Par défaut
    merci

    ça marche niquel
    une tres bonne fonction a conserver
    merci tous

    probleme résolu (je le valide avec la ptite fleche)

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

Discussions similaires

  1. Commande Javascript Interdiction division par 0
    Par Aromatic dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/11/2014, 12h29
  2. Réponses: 1
    Dernier message: 22/03/2010, 09h56
  3. JavaScript<---->ActionScript
    Par crazypiou dans le forum Flash
    Réponses: 21
    Dernier message: 17/04/2009, 17h14
  4. une "division flottante" avec javascript
    Par maniaco_jazz dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 21/12/2005, 11h32
  5. JavaScript de vérification de formulaire
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 6
    Dernier message: 26/02/2003, 13h48

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