以下是引用sunnet在2002-8-22 13:02:00的发言: A1=(4.1-4.2)+1; 或者 (5.1-5.2)+1、(6.1.-6.2)+1、(7.1.-7.2)+1 B2=0.9 C1=IF(A1=B1,"相等","不等")
结果是“不等”!
怎么回事?
想听听各位的说法。 还有一个现象: 先设一下数据结构 A1=(X.m-X.n)+1 1. 当X=0,1,2,3;8~15; m=1,n=2时,等于0.9成立 即:A1=(0.1-0.2)+1、(1.1-1.2)+1、(2.1-2.2)+1、(3.1-3.2)+1 =0.9 -->整数部分二进制1-2位 A1=(8.1-8.2)+1、(9.1-9.2)+1、(10.1-10.2)+1、(11.1-11.2)+1 =0.9 (直到15都可以) -->整数部分二进制4位 。。。。。。16以上都不等于0.9 -->整数部分二进制4位以上 2. 当X=4~7; m=1,n=2时,等于0.9不成立 3. 当m=4,n=5时,等于0.9成立 4. 当m=3,n=4时,等于0.9不成立 5. 当m=1,n=3时,等于0.8成立 。。。。。。 不完全测试 这应该与浮点数的存储机制有关系。 |