0

不确定,但我无法得到这个。

38/1024 = 0.0371

当我表演时: echo "scale=2; 15 / 0.0371" |bc,它给了我结果:

404.31

但是,当 i', 执行 : echo 'scale=2; 15/(38/1024)' |bc时,输出为:

500.00

为什么结果不同。

我需要输出404.31来自第二个命令。

谢谢。

4

1 回答 1

2

这是因为您的浮点精度在第二种情况下是不同的。

在第一种情况下,您使用0.0371除法,而在第二种情况下,您使用38/1024精确到 2 个小数点,这给出0.03.

所以基本上你在第二种情况下的实际命令是

echo "scale=2; 15 / 0.03" |bc

因此不同的输出。

如果您想要与第一次使用 scale as 4 相同的输出,例如

echo "scale=4; 15/(38/1024)" |bc
于 2018-10-15T08:03:26.630 回答