可能重复:
Why can't decimal numbers be represented exactly in binary?
我有一个问题,正在解决一个单纯形问题,而在几次迭代中,在1次迭代中,该值变为.400000,现在我将该值乘以100得到40.000000.Now我用40减去这个值,但解决方案是.000001。请帮我解决这个问题,我无法弄清楚这个值是如何产生的.000001 ?? 因为这个.000001在检查值时给出了问题,即我与0比较,但是编译器将其视为大于0的值,并且得到了错误的答案。我如何更正此错误?
答案 0 :(得分:2)
它与浮点中的机器精度有关。在这里阅读一下:http://en.wikipedia.org/wiki/Floating_point#Machine_precision