在除以两个浮点值时,由于精度错误,我得到了错误的答案。例如,1001.05/5.0 应该等于 200.21 ,但我得到了 200.2099999999。
校正结果是使用我们数学库中的除法函数而不是“/”获得的。那么这个库函数做了什么额外的事情来纠正精度错误呢?您可以解释或指出有关用于校正精度误差的标准算法的信息,此函数一定一直在使用这些算法。
最佳答案
您的数学库没有使用 float ,或者在您打印结果时四舍五入。 200.21 无法用标准 float 精确表示。
关于algorithm - 数学库中的除法函数如何处理除法运算符无法做到的精度误差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10682192/