首页 > TAG信息列表 > rounding-error

是否可以在JavaScript中实现无舍入问题的任意精度算术?

我已经尝试过big.js,bignumber.js和decimal.js;它们在一定程度上都可以正常工作,但是当我需要使用足够大的“奇数”位数进行任意精度计算时(我当前的测试用例是31435517643980 *(1 / / 31435517643980 * === 1)) .我对允许我处理这样的表达式(包括对外部API的调用)的任何解决方案持

c – 防止舍入错误

我刚刚读到关于C中的舍入错误.所以,如果我正在制作一个数学紧张的程序(或任何重要的计算),我应该将所有浮点数放在一起并仅使用双打,还是有更简单的方法来防止舍入错误?解决方法:义务讲座:What Every Programmer Should Know About Floating-Point Arithmetic. 另外,请尝试阅读IEEE F

c浮点减法误差和绝对值

我理解它的方式是:当在c中用双精度减去两个双数时,它们首先被转换为有效数,并以指数幂的2倍开始.如果减去的数字在有效数字中具有相同的指数和许多相同的数字,则会出现错误,从而导致精度损失.为了测试我的代码,我编写了以下安全添加功能: double Sadd(double d1, double d2, int& re

Python:舍入误差会扭曲均匀分布

我需要在0和1之间采样10个均匀分布的随机数.所以我认为python中的以下代码会这样做: positions = [] for dummy_i in range(1000000): positions.append(round(random.random(),1)) 但是,当将结果放入直方图时,结果如下所示: 因此舍入似乎破坏了random.random()生成的均匀分布

c# – ToString中的.NET舍入错误(“f2”)

你好,我在C#中有这个代码: float n = 2.99499989f; MessageBox.Show("n = " + n.ToString("f2", CultureInfo.InvariantCulture)); 这段代码用C: float n = 2.99499989f; printf("n = %.2f", n); 第一个输出3.00. 第二个输出2.99. 我不知道为什么会这样. 更新: 我也尝试了Objectiv