我正在尝试在 linux 中使用 bc 命令进行简单的计算。一旦我想要所有小数位的值。其他时候我只想要整数部分
想要获得完整的小数位
$ echo "scale=10; ((900/1303) * 928)/600" | bc
1.0683039140
Run Code Online (Sandbox Code Playgroud)
现在我只想得到 1(整数)部分,省略小数部分,所以我尝试
$ echo "scale=0; ((900/1303) * 928)/600" | bc
0
Run Code Online (Sandbox Code Playgroud)
它如何显示零。它应该显示为 1
有人可以帮忙吗。在这种情况下,我不想使用 awk 或 sed 提取整数部分
尝试:
echo "scale=20; a=((900/1303) * 928)/600; scale=0; a/1" | bc
Run Code Online (Sandbox Code Playgroud)
但是,这是一个截断小数,结果 like1.9999
也会被截断1
。
但这似乎是你所要求的。
它如何显示零。...
因为900/1303
(小数点为零)变成0
. 将0
被运送到最终结果。也许,如果您重新排序:
$ echo "( 900 * 928 / 1303 ) / 600" | bc
1
Run Code Online (Sandbox Code Playgroud)
...它应该显示 1
不,它不应该,如果中间除法是用零小数进行的。