我在使用浮点变量时听说过"错误".现在我正在尝试解决这个难题,我想我得到了一些舍入/浮点错误.所以我最终要弄清楚浮点错误的基础知识.
什么是浮点/舍入误差的简单示例(最好是在C++中)?
编辑:例如说我有一个成功概率为p的事件.我做了10次此事件(p没有变化,所有试验都是独立的).两次成功试验的概率是多少?我把它编码为:
double p_2x_success = pow(1-p, (double)8) * pow(p, (double)2) * (double)choose(8, 2);
Run Code Online (Sandbox Code Playgroud)
这是浮点错误的机会吗?
可能重复:
浮点/舍入错误的简单示例是什么?
当我执行以下Lua代码时:
a = 5.6
b = 14 * 0.4
c = 11.2 / 2
d = 28 * 0.2
print( a == b )
print( a == c )
print( a == d )
print( b == c )
print( b == d )
print( c == d )
Run Code Online (Sandbox Code Playgroud)
我得到以下结果:
false
true
false
false
true
false
Run Code Online (Sandbox Code Playgroud)
有人可以解释为什么14*0.4和28*0.2不等于5.6?
谢谢