Questions tagged «rounding»

四舍五入一个数字值意味着用另一个近似相等但具有更短,更简单或更明确表示形式的值替换它。

5
为什么很多(旧)程序都使用floor(0.5 +输入)而不是round(输入)?
差异在于返回值,我相信这种情况会给平局提供输入,例如以下代码: int main() { std::cout.precision(100); double input = std::nextafter(0.05, 0.0) / 0.1; double x1 = floor(0.5 + input); double x2 = round(input); std::cout << x1 << std::endl; std::cout << x2 << std::endl; } 输出: 1 0 但是最终它们只是不同的结果,一个选择了自己喜欢的一个。我看到许多使用floor(0.5 + input)而不是的“旧” C / C ++程序round(input)。 有什么历史原因吗?最便宜的CPU?
80 c++  rounding  floor 


6
在Swift中汇总CGFloat
如何在Swift中汇总CGFloat?我已经尝试过了,ceil(CDouble(myCGFloat))但是只能在iPad Air和iPhone 5S上使用。 在另一台模拟设备上运行时,出现错误提示 'NSNumber' is not a subtype of 'CGFloat'
78 swift  rounding  cgfloat  ceil 



4
将浮点数舍入为x个小数?
有没有办法将python浮点数舍入为x小数?例如: >>> x = roundfloat(66.66666666666, 4) 66.6667 >>>x = roundfloat(1.29578293, 6) 1.295783 我已经找到了修剪/截断它们的方法(66.666666666-> 66.6666),但是不是圆形的(66.666666666-> 66.6667)。
75 python  math  rounding 

11
在Objective-C中四舍五入数字
我试图对数字进行舍入并转换为字符串,以增强Objective-C程序的输出。 我有一个浮点值,我想四舍五入到最接近的.5,然后用它来设置标签上的文本。 例如: 1.4将是以下字符串:1.5 1.2将是以下字符串:1 0.2将是一个字符串:0 我花了一段时间在Google上寻找答案,但是作为Objective-C的菜鸟,我不确定要搜索什么!因此,我非常感谢朝着正确方向的指针! 谢谢,Ash

15
将双数取整为x个有效数字
如果我有一个双精度(234.004223)等,我想在C#中将其四舍五入为x个有效数字。 到目前为止,我只能找到四舍五入到小数点后x位的方法,但是如果数字中有任何0,这只会删除精度。 例如,0.086到小数点后一位变为0.1,但我希望它保持在0.08。

5
四舍五入到最接近的五
我需要将双精度取整到最接近的5。我找不到使用Math.Round函数执行此操作的方法。我怎样才能做到这一点? 我想要的是: 70 = 70 73.5 = 75 72 = 70 75.9 = 75 69 = 70 等等.. 是否有捷径可寻?
70 c#  double  rounding 

6
内置.Net算法,可将值四舍五入到最接近的10个间隔
如何在C#中将任何值四舍五入到10个间隔?例如,如果我有11,我希望它返回10,如果我有136,那么我希望它返回140。 我可以轻松地手工完成 return ((int)(number / 10)) * 10; 但是我正在寻找一种内置算法来完成这项工作,例如Math.Round()。我不愿意手工做的原因是,我不想为我的整个项目编写相同或相似的代码,即使是像上面这样简单的事情也是如此。
69 c#  math  rounding 

6
在JavaScript中截断/舍入整数?
对于我正在编写的脚本,我需要显示一个已经四舍五入的数字,而不是十进制或其他任何数字。我已经将其四舍五入到第三位,但是我不确定如何去掉小数点后的所有内容,因为JavaScript似乎没有substr像PHP那样的功能。 有什么建议吗?

2
检查差异是否小于机器精度的正确/标准方法是什么?
我经常遇到必须检查所获得的差异是否超出机器精度的情况。为此,R似乎有一个方便的变量:.Machine$double.eps。但是,当我转向R源代码获取有关使用此值的准则时,会看到多种不同的模式。 例子 以下是stats库中的一些示例: 检验 if(stderr < 10 *.Machine$double.eps * abs(mx)) chisq.test if(abs(sum(p)-1) > sqrt(.Machine$double.eps)) 整合 rel.tol < max(50*.Machine$double.eps, 0.5e-28) 影响力 e[abs(e) < 100 * .Machine$double.eps * median(abs(e))] <- 0 PRINCOMR if (any(ev[neg] < - 9 * .Machine$double.eps * ev[1L])) 等等 问题 一个如何理解这些不同背后的理由10 *,100 *,50 *和sqrt()修饰? 是否有关于.Machine$double.eps用于调整由于精度问题引起的差异的准则?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.