- - PR -
小数を四捨五入し、小数で表示したい
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-02-14 11:48
いつも参考にさせていただいてます。
今回小数第三位で四捨五入を行い、 小数第二位で値を表示をしたいと思っております。 (例:12.56399 → 12.56、-5.688012 → -5.69など) 小数第一位で四捨五入をし、整数で表示する場合は 0.5を足して(または引いて)Fix関数利用で表現できるのは 分かるのですが、 『小数を四捨五入』かつ『小数で表示』の場合が どうもうまくできなくて困っています。 どうかご教授願います。 | ||||
|
投稿日時: 2005-02-14 12:00
こんにちは。
以下でどうですか?
あと、余計ですが環境を書いてくださいね。 [ メッセージ編集済み 編集者: SE卵 編集日時 2005-02-14 12:01 ] | ||||
|
投稿日時: 2005-02-14 12:12
ちょっと調べてみましたが、
Math.Roundメソッドでもいけそうですね。 たぶん、こんな感じ(未確認)? Dim resl As Double resl = Math.Round(XXXX * 1000, 1) / 1000 やってることは、SE卵さんと同じですが・・ _________________ | ||||
|
投稿日時: 2005-02-14 12:31
Math.Round は四捨五入とは少々異なるようですよ。
参考リンク: http://akari.kabe.co.jp/magSite/Content.modf?id=20040701171030 | ||||
|
投稿日時: 2005-02-14 12:42
http://jeanne.wankuma.com/tips/math/04-halfajust.html
_________________ 中博俊 MSMVP Visual Studio C# Since 2004/04-2005/03, MCP http://naka.wankuma.com/ http://blogs.wankuma.com/naka/ naka@wankuma.com | ||||
|
投稿日時: 2005-02-14 12:43
>がりうむさん
確かに・・ やっぱ普通にSE卵さんのようにやるべきですね。 勉強になりました。 _________________ | ||||
|
投稿日時: 2005-02-14 14:16
ご返答下さった皆様、
おかげさまで実装できました(^^) ありがとうございました。 (ちなみに環境はVS.NET2003、IIS6.0、言語はVB.NETです。今更ですが…) | ||||
|
投稿日時: 2005-02-14 14:21
ここでも四捨五入についてかなり議論されてます。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=5507&forum=7 >司会者さん リンク先でJittaさんが書かれてますが、負数を扱うなら、注意してください。 |