L'impression que le nombre correct de points décimaux avec cout
J'ai une liste de float
valeurs et je veux les imprimer avec cout
avec 2 décimales.
Par exemple:
10.900 should be printed as 10.90
1.000 should be printed as 1.00
122.345 should be printed as 122.34
Comment puis-je faire cela?
( setprecision
ne semble pas aider dans ce.)
Vous devez vous connecter pour publier un commentaire.
Avec
<iomanip>
, vous pouvez utiliserstd::fixed
etstd::setprecision
Voici un exemple
Et vous obtiendrez de sortie
#define FIXED_FLOAT(x) std::fixed <<std::setprecision(2)<<(x)
qui simplifie l'utilisation de:cout<<FIXED_FLOAT(d)
Vous avez été près de là, plus besoin d'utiliser std::fixe ainsi, reportez-vous http://www.cplusplus.com/reference/iostream/manipulators/fixed/
sorties:
setprecision(n)
s'applique à l'intégralité du numéro, pas de la partie fractionnaire. Vous devez utiliser le format virgule fixe pour le faire appliquer à la partie fractionnaire:setiosflags(ios::fixed)
Simplifier la accepté de répondre à
Exemple simplifié:
Et vous obtiendrez de sortie
Référence:
std::fixed
std::setprecision
J'ai eu un problème pour les entiers tout en voulant une mise en forme cohérente.
Une réécriture de l'exhaustivité:
Vous devez régler le flotteur mode fixe.
J'ai eu ce genre de problème dans le code de la concurrence et ce est la façon dont j'ai géré ça.
Réglage d'une précision de 2 pour toutes les valeurs doubles
D'abord l'ajout de l'en-tête à utiliser setprecision
#include <iomanip>
Puis en ajoutant le code suivant dans notre principal
De sortie:
Vous devez utiliser fixe pour l'écriture de 5,00 c'est pourquoi,votre sortie ne viendra pas pour 5.00.
Une courte vidéo de référence de lien, je suis en ajoutant ce qui est utile
Pour définir fixe de 2 chiffres après la virgule utilisation de ces premiers:
De l'impression du double des valeurs.
Ceci est un exemple:
Juste un point de détail; mettre ce qui suit dans l'en-tête
using namespace std;
puis
std::cout << std::fixed << std::setprecision(2) << d;
devient simplifié de
cout << fixe << setprecision(2) << d;
ce un exemple à l'aide d'une matrice.