在GNU bc中,我可以使用print
语句打印一个值。根据值和其他参数,实际上将打印更多或更少的字符。如何确定将要打印的字符数,以便我可以在漂亮的列中打印数字表?
答案 0 :(得分:0)
您可以使用特殊变量scale
控制正在打印的字符数,该变量确定小数点后的位数 - 但它只会更改计算后存储的位数。例如:
scale = 3
var = 0.12345
var /* Still shows five digits */
.12345
var/1 /* Now just three digits */
.123
但至少它不仅会截断,还会添加填充:
var = 0.12
var
.12
var/1
.120
如果要在脚本中使用它,您可能希望将除法的输出分配给变量本身:
var /= var/1
print var
对于比这更精细的东西,我将bc的输出分配给shell变量,并使用printf
进行格式化。