求高手!乘除运算中数字先后顺序也影响计算结果??诡异
Actan 2011-02-12 11:16:36 计算的公式如下:
写法1: prod_discount * bundlePrice/ord_prodamt*unitPrice/bundleStorePriceTotal
各个值为:
51.00 * 5500.00/8800.00*2200.00/5500.00
写法2: bundlePrice*unitPrice/ord_prodamt/bundleStorePriceTotal * prod_discount
各个值为:
51.00 * 5500.00/8800.00*2200.00/5500.00
第一种其实是: 51.00 * 5500.00/8800.00*2200.00/5500.00
第二种其实是: 5500.00/8800.00*2200.00/5500.00 * 51.00
这两种写法的区别 只是把 prod_discount 放的位置不同,第一个在最前面, 第二个在最后面。
但是诡异的是计算结果居然是不同的,第一种,放在最前面的计算结果是 12.74,这是错的,因为其实这个公式是 51/4=12.75
是可以整除的,但第二种写法算的结果是对的,结果就是12.75。
我怎么也想不通啊,对于第一种写法,db2为什么会给出12.74呢??
有高人能解释下中吗?