Bc
BC—自動全精度乘法
高,我需要測試我的任意精度計算器,並且
bc
似乎是一個很好的比較標準,但是,bc
確實將每個乘法的結果截斷為每個所涉及的操作數的最大比例。有沒有一種快速的方法可以關閉它或自動將每個乘法的比例設置為因子的比例之和,這樣它就不會失去任何精度?
如果您對此有一個更優雅的解決方案,涉及除 之外的其他
bc
內容,我將不勝感激您的分享。例子:
$ bc <<< '1.5 * 1.5' 2.2
真正的答案是 2.25。
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
手冊頁中閱讀更多資訊。
試試這個 :
$ bc scale=10 1.5 * 1.5 2.25
在 bc’s man 中搜尋比例變數