2011-11-02 59 views
0

我在Ubuntu 10.08上編寫BASH命令行程序。Linux BC:十進制/浮點計算不準確

然而,我發現一個問題:

VSize=`echo 370.02 \* 1024 \* 1024 |bc` 
echo ${VSize} 
387994091.52 

然而,370.02 * 1 024 * 1 024 = 387994092

我已經安裝了Python 2.6,甚至蟒蛇說:

print 370.02*1024*1024 
387994091.52 

如何在Linux命令行中得到準確的答案?

可能嗎?

非常感謝!

回答

4

然而,370.02 * 1 024 * 1 024 = 387994092

不太。

>>> 387994092./1024/1024 
370.02000045776367 
>>> 0.00000045776367 * 1024 * 1024 
0.47999999803392002 

不準確的是你。

+0

啊...不準確的是Google。輸入'370.02 * 1024 * 1024'到Google,你會得到:'370.02 * 1 024 * 1 024 = 387 994 092'。我太相信Google了。 – DocWiki