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

Langage Java Discussion :

Nombre zéro ?


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 162
    Par défaut Nombre zéro ?
    Bonjour,

    Voilà, j'effectue dans une classe, des opérations sur des double, et j'ai été étonné de trouver parmi les valeurs obtenues un "-0.0". Je me suis dit que c'était peut être une spécificité du Double, et j'ai essayé de même avec les floats, mais j'obtiens le même résultat. Je croyais à une approximation de la valeur qui est peut être en -0.00000000000000001, mais ça me semble malgré tout assez étrange, les opérations étant trés élémentaires (multiplication, soustraction, addition). Obtenir un "vrai" 0 n'est pas réellement mon but, mais je reste perplexe devant ce résultat. Si quelqu'un a des idées ou hypothèses pouvant éclaircir ce mystère ?

    Merci d'avance :-)

  2. #2
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 901
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 901
    Billets dans le blog
    54
    Par défaut
    Non c'est normal ca vient du fait que la mantisse est signee et que la norme de codage IEE machin chose autorise 0 a avoir les 2 signes. Les 2 valeurs peuvent donc exister.

    Note que le test (+0 == -0) vaut true MAIS que d1.equals(d2) vaut false si d1 = +0 et d2 = -0 (ou inversemenent).

    Voir la doc des classes Float et Double
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

Discussions similaires

  1. [XSLT] Suppression des zéros à gauche d'un nombre
    Par stepd dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 08/03/2007, 10h32
  2. Réponses: 2
    Dernier message: 17/01/2007, 17h21
  3. Réponses: 7
    Dernier message: 20/12/2006, 18h18
  4. Réponses: 9
    Dernier message: 20/03/2006, 09h59
  5. [linux] mettre des zéros devant un nombre
    Par le mage tophinus dans le forum C
    Réponses: 15
    Dernier message: 04/10/2005, 08h26

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