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 un chiffre sans utiliser math.round


Sujet :

JavaScript

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Points : 288
    Points
    288
    Par défaut arrondir un chiffre sans utiliser math.round
    Bonjour,

    Je cherche à faire un arrondi personnalisé.
    Voici les différents cas:
    Déja on ne souci que des chiffre décimaux.
    Si X,0<chiffre<X,50 alors afficher X,50
    Si X,50<chiffre<X,99 alors afficher X,90
    Si chiffre = entier laisser tel quel.

    Comment faire pour faire ce genre d'arrondi en javascript?

  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
    dasn l'ancienne propostion de FAQ il doit y avoir un code pour les arrondis personalisés ...

    une recherche rapide m'a conduit par là :
    http://www.developpez.net/forums/sho...hlight=arrondi

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    818
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Drôme (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2005
    Messages : 818
    Points : 288
    Points
    288
    Par défaut
    Je n'ai pas compris la fonction Exactround:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    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;
    }
    Qu'est ce qu'elle fait? a quoi correspondent les parametres?

  4. #4
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 143
    Points
    11 143
    Par défaut
    Code javascript : 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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    function roundPersonnalise()
    {
     var nbStr, pos, min, max;
     
     var nb = 50.452453;
     
     alert(nb);
     
     nbStr = nb.toString();
     pos = nbStr.indexOf(".");
     
     if (pos<0)
     {
        alert(nb);
     }
     else
     {
       min = parseInt(nb);
       max = min+0.50;
     
       if (min<=nb && nb<=max)
       {
          nb = max;
          alert(nb);
       }
       if (nb>max)
       {
          nb = min+0.9;
          alert(nb);
       }
     
     }
     
    }

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

Discussions similaires

  1. Arrondir à 2 chiffres avec ROUND
    Par Xeuch dans le forum Langage
    Réponses: 3
    Dernier message: 26/09/2013, 13h40
  2. Réponses: 5
    Dernier message: 06/10/2011, 16h58
  3. Réponses: 7
    Dernier message: 03/02/2007, 13h09
  4. [][Timer] Créer un Timer sans utiliser le composant
    Par HPJ dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 01/10/2003, 11h04
  5. Tore en OpenGL sans utiliser glut
    Par lefort dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 20/11/2002, 16h32

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