Answers:
您可以bc使用scale=<#>参数控制输出的比例。
$ echo "scale=10; 5.1234 * 5.5678" | bc
28.52606652
$ echo "scale=5; 5.1234 * 5.5678" | bc
28.52606
使用您的示例:
$ bc <<< 'scale=2; 1.5 * 1.5'
2.25
您还可以使用-l开关(感谢@manatwork),它将把比例尺初始化为20,而不是默认的0。例如:
$ bc -l <<< '1.5 * 1.5'
2.25
$ bc -l <<< '1.52 * 1.52'
2.3104
您可以scale在bc手册页中了解更多信息。
min(max(sx,sy,scale),sx+sy)在那里sx和sy是的尺度x和y在x*y。设置scale=scale(x)+scale(y)将提供所需的最大精度。将小数位数设置为更高的数字(例如1000)不会增加结果的小数位数。scale变量仅直接影响s,scale=1000; a/1无论a之前的小数位数是多少,除法的结果都会创建一个带有1000个十进制数字(点后)的结果。