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

avec Java Discussion :

Résultat d'un simple calcul erroné


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Résultat d'un simple calcul erroné
    Hello, voici mon code java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    	public double donneImc(double poids, double taille) {
    		// Unités métriques : IMC = Poids (kg) / (Taille (m) x Taille (m))
     
    		return poids / (taille * 2);
    	}
    Et pour un poids = 70 et taille = 170 par exemple, j'obtiens un long chiffre à virgule qui ne correspond absolument pas à ce que je suis sensé obtenir.

    Pourtant, pour les calculs simple (comme multiplier diviser soustraire...) il ne rencontre pas de problème mais là il bloque.

    Une idée ?

    Merci.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2011
    Messages : 366
    Points : 1 361
    Points
    1 361
    Par défaut
    Citation Envoyé par euforisia Voir le message
    Hello, voici mon code java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    	public double donneImc(double poids, double taille) {
    		// Unités métriques : IMC = Poids (kg) / (Taille (m) x Taille (m))
     
    		return poids / (taille * 2);
    	}
    Et pour un poids = 70 et taille = 170 par exemple, j'obtiens un long chiffre à virgule qui ne correspond absolument pas à ce que je suis sensé obtenir.

    Pourtant, pour les calculs simple (comme multiplier diviser soustraire...) il ne rencontre pas de problème mais là il bloque.

    Une idée ?

    Merci.
    Déjà, le commentaire ne correspond pas au code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public double donneImc(double poids, double taille) {
       return poids / (taille * taille);
    }
    Et qui est en plus la formule de l'IMC. Cà devrait te résoudre ce problème...
    les raisonnables ont duré, les passionné-e-s ont vécu

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par rmaker Voir le message
    Déjà, le commentaire ne correspond pas au code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public double donneImc(double poids, double taille) {
       return poids / (taille * taille);
    }
    Et qui est en plus la formule de l'IMC. Cà devrait te résoudre ce problème...
    Oui je n'ai pas collé le bon code dsl j'avais mis taille * 2 pour tester mais le résultat est pareil avec taille * taille.

  4. #4
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    j'obtiens un long chiffre à virgule qui ne correspond absolument pas à ce que je suis sensé obtenir.
    Bah si tu es censé avoir comme réponse mettons 7.2 et que tu lis 7.19999999998 alors c'est correct. Le problème vient du calcul a chiffre décimaux.

    Pour éviter cela (et c'est expliquer plusieurs fois sur ce forum), tu dois arrondir a l'affichage, ou utilise la classe Bigdecimal.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Pour plus de détails, tu peux faire un tour sur la FAQ.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 104
    Points : 102
    Points
    102
    Par défaut
    Euh, t'es sûr que c'est en cm la taille (170).
    Il n'y aucun problème avec un calcul en m (1,7).

    Je pense pas que son erreur vienne de l'arrondi ("nombre qui n'a rien à voir") mais plutôt de l'unité utilisé. Ton nombre bizarre serait pas 0,00....

Discussions similaires

  1. Résultat de calcul erroné
    Par TheBuzz dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/06/2008, 08h00
  2. Réponses: 0
    Dernier message: 11/11/2007, 07h03
  3. Résultat anormal lors de calcul Double
    Par totore dans le forum Langage
    Réponses: 8
    Dernier message: 04/12/2006, 00h45
  4. [calc]Faire de simples calculs avec LaTeX (numérotation de pages)
    Par Konrad Florczak dans le forum Programmation (La)TeX avancée
    Réponses: 7
    Dernier message: 13/10/2006, 16h12
  5. Simple calculs d'indice .
    Par Clad3 dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 18/10/2005, 11h01

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