Округление и знаки после запятой в C++ - Вопросы по С+

Вопрос Округление и знаки после запятой в C++

Регистрация
16 Ноя 2013
Сообщения
99
Репутация
0
Спасибо
0
Монет
0
Может быть кто-нибудь знает как округлить в С++
Например вот код и мне нужно, что бы d округлилось сначала в большую, а потом в меньшую сторону. и вывелось только два знака после запятой.

d=3.45678
cout << "d: " << d << endl;

Некоторые пишут, что нужно записать так
cout << "d: " << setprecision(2) <<d << endl;
Но как я понял, эта функция только скрывает из видимости все числа, выводя на экран только два первых. А мне нужно именно округление..
 
Регистрация
5 Окт 2013
Сообщения
89
Репутация
0
Спасибо
0
Монет
0
#include <cmath> ... double a = 1234.567; int r = round(a); // округлить: r = 1235 int f = floor(a); // оставить только целую часть: f = 1234
 
Регистрация
28 Июл 2013
Сообщения
84
Репутация
0
Спасибо
0
Монет
0
#include #include int main() { double x = 1234.4571; printf("%f ", floor(x * 10 + 0.5) / 10); printf("%f ", floor(x * 100 + 0.5) / 100); printf("%f ", floor(x * 1000 + 0.5) / 1000); return 0; }
 
Сверху Снизу