Question de base c++

lmd -  
 lmd -
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   Statut Membre Dernière intervention   125
 
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
doctormad
 
Salut, utilise float si tu met un nombre a virgule.
0
lmd
 
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