Problème avec la division des long [Résolu]

Signaler
Messages postés
35
Date d'inscription
lundi 9 juillet 2007
Statut
Membre
Dernière intervention
6 juillet 2009
-
ammouna24
Messages postés
35
Date d'inscription
lundi 9 juillet 2007
Statut
Membre
Dernière intervention
6 juillet 2009
-
Bonjour,
Je veux bien faire une division entre deux nombres de type long :
par exemple :
long M = 1356044651L;
long D = 44600000
double result = D / M ;
et pour afficher le résultats:
DecimalFormat df1 = new DecimalFormat("0.0000");
System.out.println(df1.format(result));

J'arrive pas à comprendre le problème.
Merci de m'aider.

4 réponses

Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
92
Normal, vu que ton résultat fait moins de 0 : si tu divise 2 longs dont le résultat fait moins de 0, alors le résultat est un long égal à 0, qui ensuite est stocké dans un double => 0 !

Pour avoir le résultat auquel tu t'attends, il ne faut pas diviser 2 long, mais 2 double :
double result = new Double(D) / new Double(M) ;
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
92
Salut,

" J'arrive pas à comprendre le problème." : quel est le problème ?
Messages postés
35
Date d'inscription
lundi 9 juillet 2007
Statut
Membre
Dernière intervention
6 juillet 2009

Bonjour,

:) J'ai oublié de dire mon problème, toujours j'ai des 0 c.a.d il ne calcule pas l'opération.
Messages postés
35
Date d'inscription
lundi 9 juillet 2007
Statut
Membre
Dernière intervention
6 juillet 2009

Merci,