Donc, j’ai obtenu la réponse à ma dernière question (je ne sais pas pourquoi je ne pensais pas cela). J’ai l’impression un à l’aide de
qui a obtenu arrondi lorsque je ne m’attendais pas elle. Comment puis-je faire imprimer un
à l’aide d’une précision ?
Réponses
Trop de publicités?Vous pouvez définir la précision directement sur et utilisé la [
](http://en.cppreference.com/w/cpp/io/manip/fixed) spécificateur de format.
Vous pouvez `` pour obtenir le maximum de précision d’un float ou double.
Voici ce que j'ai utiliser:
std::cout << std::setprecision (std::numeric_limits<double>::digits10 + 1)
<< 3.14159265358979
<< std::endl;
Fondamentalement, les limites paquet a des traits de caractère pour tous les construire dans les types de.
L'un des traits pour les nombres à virgule flottante (float, double, long double) est le digits10 attribut. Cela définit la précision (j'ai oublié la terminologie exacte) d'un nombre à virgule en base 10.
Voir: http://www.cplusplus.com/reference/std/limits/numeric_limits.html
Pour plus de détails sur d'autres attributs.
La façon iostreams est sorte de maladroit. Je préfère utiliser `` car il calcule la précision juste pour moi. Et c’est rapide, trop.
Sortie :
Pi : 3.14159265358979
cout est un objet qui a un tas de méthodes, que vous pouvez appeler pour modifier la précision et le formatage des trucs imprimés.
Il y a une opération de setprecision(...), mais vous pouvez également définir d’autres choses comme la largeur d’impression, etc..
Chercher des cout dans le renvoi de l’IDE.