JAVA : afficher exactement 2 décimales

ifoks -  
 Utilisateur anonyme -
Bonjour,

Je voudrais afficher un nombre double avec exactement 2 décimales, j'ai réussi à faire l'arrondie mais par exemple si le résultat vaut 1.7, le programme va m'afficher 1.7 alors que je voudrais qu'il affiche 1.70

Aidez moi please !


A voir également:

2 réponses

Utilisateur anonyme
 
Salut,

Après l'arrondi (supposé dans double mon_double) tu ajoutes ceci:

//double mon_double = 1.7;
DecimalFormat df = new DecimalFormat("0.00");
System.out.println(df.format(mon_double));


Cordialement,

Dan
10
scriptiz Messages postés 1424 Date d'inscription   Statut Membre Dernière intervention   425
 
danimo t'a donné la réponse :)

Sinon au cas où voici ma méthode que j'utilise pour arrondir le double x à n décimales au cas où ça pourrait te servir.

	private static double arrondiNDecimales(double x, int n)
	{
		double pow = Math.pow(10, n);
		return (Math.floor(x * pow)) / pow;
	}


Exemple :
double reel = 3.1415
double arrondi = arrondiNDécimales(reel, 2);
System.out.println(arrondi);
// affiche 3.14
1
Utilisateur anonyme
 
Salut,

OK pour l'arrondi scriptiz, mais ce que veut ifoks, c'est qu'au cas où l'arrondi donne par exemple 1.7 on affiche 1.70

Avec cet exemple:

double reel = 1.701234;
double arrondi = arrondiNDecimales(reel, 2);
System.out.println(arrondi);

On affichera 1.7

On pourait aussi faire un arrondi à 3 décimales qui dans cet exemple donnerait 1.701 et ensuite tronquer le résultat à 2 décimales, mais je pense qu'il vaut mieux utiliser DecimalFormat,

Et ceci sans avoir à se risquer à utiliser BigDecimal,,,

Cordialement,

Dan
0
scriptiz Messages postés 1424 Date d'inscription   Statut Membre Dernière intervention   425
 
Je sais bien danimo, c'est pour ça que je dit

"danimo t'a donné la réponse. Sinon au cas où voici ma méthode que j'utilise pour arrondir le double x à n décimales au cas où ça pourrait te servir. "

En gros je lui suggère en plus une méthode d'arrondi au cas où il utilisais une façon plus compliquée ^^
0
Utilisateur anonyme
 
Et je pense que ta réponse est loin d'être inutile...

@+
0