【问题标题】:Linux BC: Decimal/Floating Calculation NOT AccurateLinux BC:十进制/浮点计算不准确
【发布时间】:2011-12-20 00:50:37
【问题描述】:

我正在 Ubuntu 10.08 上的 BASH 中编写命令行程序。

但是,我发现了一个问题:

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

但是,370.02 * 1 024 * 1 024 = 387994092

我已经安装了 Python 2.6,甚至 python 说:

print 370.02*1024*1024
387994091.52

如何在 Linux 命令行中得到准确的答案?

有可能吗?

非常感谢!

【问题讨论】:

    标签: python linux ubuntu command-line 32-bit


    【解决方案1】:

    但是,370.02 * 1 024 * 1 024 = 387994092

    不完全是。

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

    不准确的是你。

    【讨论】:

    • 啊...不准确的是谷歌。在谷歌中输入370.02*1024*1024,你会得到:370.02 * 1 024 * 1 024 = 387 994 092。我太信任谷歌了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-08
    • 2022-06-10
    • 2013-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    相关资源
    最近更新 更多