округление в с++
2174
8
заранее прошу прощения за абсолютно ламаковский вопрос, но все же как в с++ устроить округление значения переменной float до определенного количества знаков после запятой с присвоением получившегося значения другой переменной?
А формат данных порулить?
На память я не помню, но что-то вроде %10.5f при выводе.
До точки - кол-во целых, после - кол-во дробных.
По-моему и при вычислениях примерно так.
Но могу ошибиться.
Погляди описание формата данных.
На память я не помню, но что-то вроде %10.5f при выводе.
До точки - кол-во целых, после - кол-во дробных.
По-моему и при вычислениях примерно так.
Но могу ошибиться.
Погляди описание формата данных.
Поручик Голицын
шатун сибирский обыкновенный
Это при выводе. Это понятно. Вопрос-то именно в усечении дробной части самого значения. Тут верно Reluk посоветовал.
Только поправочка:
round(x*10n)/(float)10n;
Иначе у результата усечется дробная часть.
(10n - это 10 в степени n. Кстати, сделать его можно как exp(n*ln(10)); )
Только поправочка:
round(x*10n)/(float)10n;
Иначе у результата усечется дробная часть.
(10n - это 10 в степени n. Кстати, сделать его можно как exp(n*ln(10)); )
Поручик Голицын
шатун сибирский обыкновенный
>>> а что не pow(n, 10); ?
А потому что не знал :). Вот и пришлось мозгами пошевелить...
Пасиб.
А потому что не знал :). Вот и пришлось мозгами пошевелить...
Пасиб.
Поручик Голицын
шатун сибирский обыкновенный
Вопрос совсем уж смешной: где round() описана?