如何将浮点数舍入到C ++的下一个0.5增加?

时间:2014-08-27 01:31:06

标签: c++

我使用了函数round();但是这个函数给出了最接近的整数。

这是我到目前为止:     x = 1.3;

round(x);

这会使x = 1,我想转到1.5或如果1.8转到2.0。请帮忙。

3 个答案:

答案 0 :(得分:4)

考虑一下:

round(x * 2.0) / 2.0;

答案 1 :(得分:1)

因为你想要增加.5的下一个倍数:

    x = ceil(x*2.0)/2.0;

答案 2 :(得分:0)

要将值舍入0.5,将输入值加倍,然后使用舍入函数,最后除以2。

C ++代码:

answer = ( round(x*2) )/2;