0

Hi,

If I want to print several numbers, say 12.3, 24.038, 154.9181, 0.4778--anyway, just all kinds of numbers, how can I print all of them with fixed number of decimals, say two decimals, that is, the output will be: 12.30, 24.03, 154.91, 0.47... ? The "setprecision(...)" doesn't work because it specifies the number of "significant" digits, rather than the number of digits after the decimal point.

Thank you in advance!

3
Contributors
4
Replies
5
Views
9 Years
Discussion Span
Last Post by jesseb07
0

(seeing as I can't delete a post, to prevent redundancy, I'll give an alternate solution)

Hi, in the case of setprecision() not working, try the following:

cout.setf(ios::fixed); // prevents e-notation
cout.setf(ios::showpoint); //always shows decimal point
cout.precision(2); // with 2 being the number of decimals

using that, here's what happened in my test program:

4 inputs
1.234
1.23
123.456
1234

and then just used cout to put them on the screen
1.23
1.23
123.46 // rounded
1234.00

See if that works for you

~J

0

Thank you both! Both work. The "fixed" is simpler to use. For the second way, is that it applies to all the cout statements after the statement?

0

Thank you both! Both work. The "fixed" is simpler to use. For the second way, is that it applies to all the cout statements after the statement?

That is my understanding as well, however if I recall you can make exceptions but I may be wrong there.

~J

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.