DOBON.NET DOBON.NETプログラミング掲示板過去ログ

四捨五入について

環境/言語:[WindowsXP、VB.net]
分類:[.NET]

データグリッドの表で123.4567という数字があるとします。小数点第2位で四捨五入して123.5と表示するにはどうしたらよいのでしょうか?
DataGridの列に値を表示するときの書式を指定する
http://dobon.net/vb/dotnet/datagrid/columnformat.html

を参考にして下さい。F2とすることにより小数点第2位で四捨五入したと思います。ただ、ドキュメント上、四捨五入するという記述を見つけられません。(^^;
■No15572に返信(trapemiyaさんの記事)
> DataGridの列に値を表示するときの書式を指定する
> http://dobon.net/vb/dotnet/datagrid/columnformat.html
>
> を参考にして下さい。F2とすることにより小数点第2位で四捨五入したと思います。ただ、ドキュメント上、四捨五入するという記述を見つけられません。(^^;

できました。ありがとうございます。
解決済み!
>ただ、ドキュメント上、四捨五入するという記述を見つけられません。(^^;

なぜなら四捨五入ではないから。
四捨五入は0.5足して、切り捨ててください。
通常は偶数丸め(JIS丸め)を使います。
■No15580に返信(中博俊さんの記事)
> なぜなら四捨五入ではないから。
> 四捨五入は0.5足して、切り捨ててください。

やっぱり四捨五入ではないんですね。

指定した精度の数値に四捨五入する
http://jeanne.wankuma.com/tips/math/halfadjust.html

.............................................................................................................................
じゃんぬ @ わんくま同盟, Microsoft MVP for Visual Developer - C#
http://jeanne.wankuma.com/
http://blogs.wankuma.com/jeanne/
> なぜなら四捨五入ではないから。
> 四捨五入は0.5足して、切り捨ててください。
> 通常は偶数丸め(JIS丸め)を使います。

実際に試してみましたが、少なくとも偶数丸めにはなっていないようです。見た感じは四捨五入のようです。確かにRound関数などは偶数丸めで有名なんですが、書式指定子Fに関しては記述が見つかりません。もし、文献があればご紹介願います。

DOBON.NET | プログラミング道 | プログラミング掲示板