Division du type 1/x renvoie 0 [Résolu]

Messages postés
8
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
19 avril 2009
- - Dernière réponse : cmonnom
Messages postés
8
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
19 avril 2009
- 9 mars 2009 à 20:41
Bonjour,

Cette question a déjà été posée dans le forum mais la solution ne semble pas fonctionner pour moi.

Je veux obtenir l'inverse d'un nombre, exemple 2  => 1/2.
Le problème c'est que l'opération 1 / 2  me renvoie un résultat nul au lieu de 0.5.
Un calcul du type 3/2 me renverra 1.5 sans problème.
Il semble que cela se produise uniquement lorsque le dividende est 1.

Je précise que j'utilise uniquement des doubles dans mes variables.

Merci.
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
110
Date d'inscription
mercredi 28 mars 2007
Statut
Membre
Dernière intervention
28 août 2012
1
3
Merci
Salut,

Il te faut pocéder à un cast implicite pour que tes variables ne soient pas consiérées comme des int.
Genre :

float

myFloat= 1f/2f;

double myDouble =1d/2d;
Là tu auras les bons résultats.

A +,

amundain

<hr width="100%" size="2" />Java bien,merci.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 202 internautes nous ont dit merci ce mois-ci

Commenter la réponse de amundain
3
Merci
Salut,





int






x = 1/2;
System.out.println(


"x = "

+ x);



// x = 0 et il y a un reste






double



y = 1d/2;
System.out.println(


"y = "

+ y);


// y = 0.5



y = 3/2;
System.out.println(


"y = "

+ y);


// y = 1.0 et un reste



y = 3d/2;
System.out.println(


"y = "

+ y);



// y = 1.5






Cordialement,
...\ Dan /...

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 202 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Utilisateur anonyme
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
83
0
Merci
Salut,

Difficile à voir si tu nous montre pas ton code... Il doit traîner une variable Integer quelque part !
______________________________________
DarK Sidious
Commenter la réponse de cs_DARKSIDIOUS
Messages postés
110
Date d'inscription
mercredi 28 mars 2007
Statut
Membre
Dernière intervention
28 août 2012
1
0
Merci
Désolé pour la mise en page...

<hr width="100%" size="2" />Java bien,merci.
Commenter la réponse de amundain
Messages postés
8
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
19 avril 2009
0
Merci
Merci, je n'avais pas essayé le coup du cast implicite.
Je fais un essai dans la soirée et je vous tiens au courant.
Commenter la réponse de cmonnom
Messages postés
8
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
19 avril 2009
0
Merci
Problème résolu!

Merci à vous, le problème venait bien de là!

De plus, il y avait une coquille dans l'algorithme qui renvoyé un résultat faux dans tous les cas...

Merci danimo et amundain!
Commenter la réponse de cmonnom