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 :

Division des valeurs doubles


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2012
    Messages : 88
    Par défaut Division des valeurs doubles
    Salut à tous,
    j'ai besoin de votre aide dans le petit problème suivant:
    Je suis entrain de chercher la similarité entre deux documents, j'ai appliqué une formule de similarité qui sous forme de" division des valeurs doubles" par fois le résultat dépasse 1 par exemple 1.00258938 mais normalement la similarité ne dépasse pas 1 donc est ce que ce problème est à cause de l'utilisation de type double ?!! Que pensez-vous ?!

  2. #2
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Bonjour,
    Effectivement, tu perds de la précision en opérant sur les doubles, ce qui explique que ton 1 soit supérieur à 1.
    Tu peux utiliser la classe BigDecimal avec laquelle tu gagneras en précision

  3. #3
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2012
    Messages : 88
    Par défaut
    salut,
    merci monsieur de me répondre.
    Est ce que j'utilise "BigDecimal" avant la division sur les valeurs doubles ou après sur la résultat de division?

  4. #4
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Il faut utiliser BigDecimal avant, sinon la précision est perdue, et utiliser les méthodes appropriées de la classe BigDecimal

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur java, .Net
    Inscrit en
    Janvier 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur java, .Net

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Par défaut
    Tu dois transformer ton double en String puis utiliser un bigDecimal pour avoir la meilleure précision

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String nombreString=String.valueOf(double);
    BigDecimal nombreBD=new BigDecimal(nombreString);

  6. #6
    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
    Par défaut
    Citation Envoyé par gandalf72000 Voir le message
    Tu dois transformer ton double en String puis utiliser un bigDecimal pour avoir la meilleure précision
    En effet j'allais conseiller de directement passer par le constructeur de BigDecimal avec un double en paramètre mais il est mentionné que la précision est de nouveau perdu.
    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/

  7. #7
    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
    Par défaut
    Je vois difficilement comment être plus claire que ça :
    Citation Envoyé par gandalf72000 Voir le message
    Tu dois transformer ton double en String puis utiliser un bigDecimal pour avoir la meilleure précision

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String nombreString=String.valueOf(double);
    BigDecimal nombreBD=new BigDecimal(nombreString);
    Ça c'est pas optimal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BigDecimal nombreBD = new BigDecimal(double);
    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/

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

Discussions similaires

  1. Sortie des valeurs de type double
    Par otspot dans le forum C++
    Réponses: 2
    Dernier message: 29/06/2008, 20h26
  2. Réponses: 14
    Dernier message: 30/05/2008, 17h04
  3. Réponses: 5
    Dernier message: 05/09/2007, 16h23
  4. [Tableaux] Foreach renvoie des valeurs double en php4
    Par Dantahoua dans le forum Langage
    Réponses: 5
    Dernier message: 10/04/2007, 17h49
  5. evc4:division des doubles
    Par gbardy dans le forum Visual C++
    Réponses: 10
    Dernier message: 07/08/2006, 14h12

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