2011年8月23日

[ruby-list:48332] Re: 1.25を %10.1f で出力したときバージョンにより表示に違いがでるのは何故でしょうか。

2つポストしてしまったようですいません。

やはりJIS丸め(=IEE754)のためみたいです。
JIS丸めは
e-1は 2(=偶数)なので e-2 が 5以下のときは切り捨て、6以上のときは切り上げになる。
e-1が奇数の場合は普通の四捨五入になる。
だと理解していたのですが、
端数が0.05より小さいなら切り捨て、端数が0.05より大きいならは切り上げ、

端数がちょうど0.05なら切り捨てと切り上げのうち結果が偶数となる方へ丸める。
ということでした。

MS系のコンパイラはJIS丸めをしていない。
他の処理系はだんだんとJIS丸め(=IEEE754)に移行してきている。
ということでしょうか。

JRubyの動作が違うことがちょっと気になりますね。


投稿者 xml-rpc : 2011年8月23日 16:31
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/105916
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。