我完全理解为什么由于浮点导致0.1 + 0.2不等于0.3。在大多数编程语言中,0.1 + 0.2 == 0.3False

但是在Excel中if(0.1 + 0.2 == 0.3; 1; 0)给出1

最佳答案

在Excel中发生这种情况的原因是因为Excel仅跟踪15位精度。 0.2 + 0.1的浮点运算结果为0.30000000000000004,第4位为第17位。这意味着Excel会截断15号0之后的所有内容,并留下0.300000000000000其中= 0.3

有关更多信息,请参见此处:https://en.wikipedia.org/wiki/Numeric_precision_in_Microsoft_Excel

07-26 09:21