floating-accuracy相关内容

浮点数显示背后的谜团

我当时正在为我的应用程序测试一些简单的解决方案,但遇到某种情况,我的脑海中浮现了问题…… “为什么一个浮点数正确地以JSON表示(如我所期望的),而另一个一个不是...?” 在这种情况下,从String转换为Decimal,然后转换为数字JSON:“ 98.39”从人类的角度来看是完全可以预测的,但是数字:“ 98.40”看起来不那么漂亮... 我的问题是,有人可以向我解释一下吗,为 ..

在Python中对十进制对象进行除法和乘法

在下面的代码中,coeff1和coeff2都是Decimal对象。当我使用type(coeff1)检查它们的类型时,我得到了(“ decimal.Decimal”类),但是当我进行测试代码并检查了十进制对象时,我得到了十进制。十进制,不带单词类 coeff1 = system [i] .normal_vector.coordinates [i] coeff2 = system [m] ..
发布时间:2020-10-07 18:35:52 Python

浮点精度误差

我对下面的LISP表达式有疑问。 CL-USER> ;,会有浮点精度错误。 (+ -380 -158.27 -35.52) 实际值:-573.79004 预期值:-573.79000 请建议我如何在LISP(我正在使用Lispworks)中达到预期的结果。 解决方案 浮点数不精确 浮点数是具有一定精度的数学实数的子集,它们是不是 精确数字。四舍 ..
发布时间:2020-10-06 06:28:43 其他开发

加减后的浮点数小于等于比较

在一系列浮点算术运算之后,是否有“最佳实践"用于对浮点数进行小于等于的比较? 我在R中有以下示例(尽管该问题适用于使用浮点数的任何语言).我有一个双x = 1,在其上我应用了一系列的加法和减法.最后,x应该恰好是一个,但不是由于浮点运算(从我的收集中得出).这是示例: > stop_times expr ..

红宝石1.9.2的加法错误

当我添加0.1+0.2时,我会得到0.30000000000000004,但是当我在ruby 1.8.7中添加相同的数字时,我会得到正确的答案0.3.我通过四舍五入得到0.3,但我只想通过添加0.1和0.2 在ruby 1.9.2上获得0.3 解决方案 您需要使用十进制才能使其正常工作. (BigDecimal('0.1') + BigDecimal("0.2")).to_f 请参 ..
发布时间:2020-07-06 04:00:46 其他开发

C ++ fmod为fmod(0.6,0.2)返回0.2

当我在c ++中使用fmod(0.6,0.2)时,它返回0.2 我知道这是由浮点精度引起的,但是现在看来我得剩下两倍的余数 非常感谢您为此类问题提供的解决方案 解决方案 数学值0.6和0.2不能用二进制浮点数精确表示. 此演示程序将向您显示正在发生的事情: #include #include #include ..
发布时间:2020-06-15 18:57:39 C/C++开发

Newton Raphson迭代-无法迭代

我不确定这个问题是在这里还是在其他地方(或者根本不在任何地方). 我继承了执行Newton Raphson插值的Fortran 90代码,其中将温度的对数与压力的对数进行插值. 插值类型 t = a ln(p) + b 其中a,b定义为 a = ln(tup/tdwn)/(alogpu - alogpd) 和 b = ln T - a * ln P 这是测 ..
发布时间:2020-06-12 19:25:02 其他开发

大n的java.lang.Math.pow(x,n)有多精确?

我想计算(1.0-p)^n,其中p是0到1之间的双精度数(通常非常接近0),n是一个正整数,可能是几百或几千(也许更大;我是还不确定).如果可能的话,我想只使用Java内置的java.lang.Math.pow(1.0-p, n)来实现,但是我有点担心,这样做可能会导致我对所关注的值范围产生巨大的准确性/精度损失.有人对使用Java的实现会有什么样的错误有一个大概的认识吗?我不确定它们的实现到底是 ..

将十进制浮点数转换为二进制并返回

简而言之,我的问题是,为什么浮点数中的舍入误差仅在计算后出现而不显示字面量? 我的意思是- 我知道由于从十进制转换为二进制然后返回的浮点数舍入错误而引起的问题. 例如,在Java中: double a = 10.567; double b = 2.16; double c = a * b; c然后存储值22.824720000000003,而不是22.82472. 这是 ..

Python 2.7.5错误打印浮点数列表

我试图从此处回答一个问题(从两个列表中减去两个项目).最初的问题有两个带有浮点值的列表,目标是将它们压缩并减去 此代码可以正常工作: Enter=[7.12, 7.14, 7.24, 7.45, 7.28, 7.31, 7.18, 7.25, 7.33, 7.38] Leave=[7.56, 7.24, 7.48, 7.52, 7.45, 7.57, 7.22, 7.31, 7.37, ..
发布时间:2020-06-12 19:24:12 Python

为什么0.1 + 0.1 == 0.2?

这与Java有关.据我了解,由于二进制表示,0.1不能完美地用Java表示.这使得 0.1 + 0.1 + 0.1 == 0.3 错误.但是,为什么 0.1 + 0.1 == 0.2 是真的吗? 解决方案 由于二进制表示, 0.1不能用Java完美地表示.那使 0.1 + 0.1 + 0.1 == 0.3 否. 这不是相等性为假的全部原因,尽管它是其 ..
发布时间:2020-06-12 19:23:34 其他开发

IEEE 754浮点除法的可逆性

IEEE 754浮点除法的可逆性是什么?我的意思是,该标准是否保证如果double y = 1.0 / x然后x == 1.0 / y,即x可以精确地一点一点恢复? y是infinity或NaN的情况是明显的例外. 解决方案 是的,IEEE 754双精度(*)值x就是x != 1.0 / (1.0 / x). 使用此属性可以轻松构建一个正常值的示例:在以十进制%.16e格式,0 ..
发布时间:2020-06-12 19:23:03 C/C++开发

在mysqli中处理小数

我必须将某些项目的价格放入mysql表中.创建表时,我使用的是DECIMAL(10,2),因为我不需要在逗号后加上两位以上的数字(例如:123,45将被接受为输入,但是123,456将被四舍五入为123,45). 第一个问题:使用DECIMAL(10,2),我如何知道逗号前可以存储多少个数字?我知道它不是10,因为10只是Mysql在对这些数字进行数学运算时使用的精度:那么数字本身的长度在哪 ..