Je veux émettre la valeur d'un double dans sa précision complète. Cependant, lors de l'utilisation de la fonction COUT, il affiche uniquement les 6 premiers chiffres, même s'il existe environ 15-16 chiffres de précision. p>
Comment puis-je obtenir mon programme pour afficher la totalité de la valeur, y compris le composant de magnitude (puissance)? p>
3 Réponses :
Vous pouvez utiliser quelque chose comme ceci: plus d'iomipulateurs, ici p> p>
Et si vous le souhaitez que cela soit pleinement précis. mais évidemment, tournez le nombre tel que 7.3333333 pour dire 7,33
Le n'est pas un équivalent de% G format de printf. Et ce format ne vous donne pas ce que certaines autres langues donnent: la chaîne la plus courte qui lit le numéro d'origine.
Utilisez le http://www.cplusplus.com/reference/iostream/manipulateurs/setprecision/ p> Vous pouvez également forcer la notation scientifique avec le manipulateur http://www.cplusplus.com/reference/iostream/manipulateurs/ scientifique / p> SetPrecision () Code> manipulateur:
scientifique p >
Vous recherchez SetPrecision code>
(code pris de lien):
int main () { double f =3.14159; cout << setprecision(15) << f << endl; return 0; }
Juste au cas où vous l'avez manqué ci-dessous, vous pouvez également utiliser l'IO-manipulateur scientifique pour forcer la notation scientifique si vous le souhaitez.