C#の丸め処理(切捨て・切り上げ・四捨五入)
※実経験の記憶を頼りに自宅の PC 環境(VMWareなど)で再現している内容もあるのでご注意下さい
2011-02-07
先日 PHP で 小数点以下の四捨五入や切捨て をチェックしていたので、ついでに C# ではどうなのか確認してみました。C# は小数点以下も Math クラス内のメソッドで対応してくれているので楽です。
Math クラスの Round メソッドの引数には、「decimal 型の対象の数値」「丸めたい小数点」「丸め方(四捨五入の他に最近接偶数への丸めがある)」の 3 つが必要になります。
using System;
namespace sisha
{
class Program
{
static void Main(string[] args)
{
// 小数点第2位を四捨五入
decimal d1 = Math.Round(12.345m, 1, MidpointRounding.AwayFromZero);
Console.WriteLine(d1); // 12.3
// 小数点第3位を四捨五入
decimal d2 = Math.Round(12.345m, 2, MidpointRounding.AwayFromZero);
Console.WriteLine(d2); // 12.35
}
}
}
また、切り捨てや切り上げも Math クラスにメソッドが用意されています。
// 切り捨て decimal d1 = Math.Floor(12.345m); // 切り上げ decimal d2 = Math.Ceiling(12.345m);
関連記事
上記の記事に関連する記事(最新の10件)です。


