Ada*_*tau 0 math objective-c ios5
如何根据对象C中的值向上或向下舍入数字.例如.
让我们说数字是143 - 我想要下降到140但如果数字是146 - 我想要舍入到150
有什么建议?
假设145应该舍入到150(这是科学和技术的标准),公式是:
x_rounded = ((x + 5)/10)*10;
Run Code Online (Sandbox Code Playgroud)
更一般地说,当舍入到最接近的n时,它就是
x_rounded = ((x + n/2)/n)*n;
Run Code Online (Sandbox Code Playgroud)
它来自于整数除法总是向下舍入的事实.
对于负数,它稍微有些棘手.
编辑:也假设它是全部整数.使用浮点数/双精度数,更好地使用C数学库,因为除法的工作方式不同.像这样:
#include <math.h>
x_rounded = floor((x+5)/10) * 10;
Run Code Online (Sandbox Code Playgroud)