Question de base c++

Fermé
lmd - 27 mars 2008 à 16:15
 lmd - 27 mars 2008 à 18:22
Bonjour,

Je ne parviens pas a voir la precision souhaitée ac double, pourquoi ma sortie est-elle différente ?

code:

double d = 125848994.25;
std::cout<<"test: "<<d<<std::endl;

resultat : 1.25849e+008 (je voudrais 1.2584899425e+010)

Merci de votre aide.

MS.

3 réponses

Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 125
27 mars 2008 à 18:03
Bonjour,

Un float c'est comme qui dirait mois précis qu'un double en fait...

Je ne comprends pas le soucis réel

double d1 = 125848994.25; -> 1.25849e+008
double d2 = 12584899425; -> 1.25849e+010

d1 et d2 ne sont pas égaux, tu ne peux obtenir l'un à partir de l'autre juste en affichant...

Eventuellement...
precision pour changer le nombre de chiffres significatifs à afficher.


M.
1
Salut, utilise float si tu met un nombre a virgule.
0
ok oauis javais mal posé ma question, c'etait juste que j'avais pas assez de chiffres significatifs ... std::setprecision(precison_souhaitée) fait l'affaire ... ou même on peut utilisé le bon printf du c.

Merci
0