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

API standards et tierces Java Discussion :

[Maths] Magie des arrondis


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2003
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 93
    Par défaut [Maths] Magie des arrondis
    Bonjour,

    Je souhaiterais avoir vos éclaircissements sur le point suivant.
    Je souhaite arrondir un nombre à 2 décimales j'utilise donc le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    float f = 123.456789;
    f = Math.round(f*100)/100;
    Et en retour j'obtient f = 123.00 !
    Comment cela se fait il ?
    Existe il un moyen plus simple pour arrondir les nombres?

    Merci d 'avance

    PS : Lorsque je décompose le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    f = f * 100;
    f = Math.round(f);
    f = f / 100;
    Cela fonctionne ...

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 705
    Par défaut
    En java la division retourne toujours un entier; regarde les méthodes de Math

  3. #3
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut Re: Magie des arrondis
    Citation Envoyé par djoukit
    Et en retour j'obtient f = 123.00 !
    normal.

    la méthode Math.round renvoie un résultat de type "int". Ensuite tu le divise par un autre "int": 100

    Or, lorsque l'on divise 2 int ensemble, cela donne un int. Cet int est ensuite re-convertit vers un float -> d'ou le "x,00"

    Essaie de modifier ton code comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    float f = 123.456789; 
    f = Math.round(f*100)/100. ; // <- le point !!

  4. #4
    Membre confirmé
    Inscrit en
    Octobre 2003
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 93
    Par défaut
    Merci bcp pour vos infos

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

Discussions similaires

  1. [JSci.maths] Méthode des moindres carrés
    Par rienque2008 dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 16/12/2008, 11h56
  2. gestion des arrondis
    Par niro75 dans le forum Langage
    Réponses: 18
    Dernier message: 23/10/2006, 23h27
  3. Somme sur des arrondis
    Par GregPeck dans le forum Requêtes
    Réponses: 3
    Dernier message: 12/05/2006, 09h54
  4. Export : définition de la précision des arrondis
    Par Aurèl90 dans le forum Access
    Réponses: 14
    Dernier message: 13/12/2005, 16h45
  5. [Maths] Générer des équations en java
    Par julian_ross dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 20/10/2005, 15h57

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