10

数値を小数点以下 2 桁に丸める必要があります。現在、次は私が推測する最も近い整数に丸められます

puts [expr {round($total_rate)}]

以下のようなことをしてもうまくいきません。別の方法はありますか?

puts [expr {round($total_rate,2)}]
4

3 に答える 3

17

特定の小数点以下の桁数に丸める最も簡単な方法は、次のformatとおりです。

puts [format "%.2f" $total_rate]

ユーザーに表示するのではなく、さらに計算するために丸められた値を使用している場合、小数点以下X桁に丸めて出力するほとんどの値は、2 進演算で正確に表現されないことに注意してください (膨大な数の他のプログラミング言語)。人々に値を示すポイントまで、特定の数の DP への丸めを予約することをお勧めします。

于 2012-04-19T09:37:22.577 に答える
15
expr {double(round(100*$total_rate))/100}

% set total_rate 1.5678
1.5678
% expr {double(round(100*$total_rate))/100}
1.57
% set total_rate 1.4321
1.4321
% expr {double(round(100*$total_rate))/100}
1.43
于 2012-04-18T15:23:51.250 に答える