prompt> printf "%.2f\n" 3.314
3.31
prompt> printf "%.2f\n" 3.315
3.32
さて、私が欲しいものを手に入れました。ただし、別の数値を使用すると、次のような結果が表示されます。
prompt> printf "%.2f\n" 28.124
28.12
prompt> printf "%.2f\n" 28.125
28.12
2番目のケースでは、なぜ正しく丸められないのですか?そうするべきで28.13
はありませんか?
答え1
printf
銀行家の丸めの使用(偶数は降り、奇数は降り):
printf '%.2f\n' 28.125 # 28.12
printf '%.2f\n' 28.135 # 28.14
printf '%.2f\n' 28.145 # 28.14
printf '%.2f\n' 28.155 # 28.16
詳細については、次を参照してください。浮動小数点ガイド