自分用のメモも兼ねて。
using System; namespace RoundSample { class Program { double data = 12345.6789; Console.WriteLine("元のデータ:{0}", data); Console.WriteLine("小数切り捨て:{0}", Math.Floor(data)); Console.WriteLine("小数切り上げ:{0}", Math.Ceiling(data)); Console.WriteLine("小数第2位以下切り捨て:{0}", RoundDown(data, 2)); Console.WriteLine("小数第2位以下切り上げ:{0}", RoundUp(data, 2)); } // 指定した桁数で切り上げます public static double RoundUp(double value, int digit) { double temp = Math.Pow(10, digit); if (0 <= value) { return Math.Ceiling(value * temp) / temp; } else { return Math.Floor(value * temp) / temp; } } // 指定した桁数で切り捨てます public static double RoundDown(double value, int digit) { double temp = Math.Pow(10, digit); if (0 <= value) { return Math.Floor(value * temp) / temp; } else { return Math.Ceiling(value * temp) / temp; } } }
元のデータ:12345.6789 小数切り捨て:12345 小数切り上げ:12346 小数第2位以下切り捨て:12345.67 小数第2位以下切り上げ:12345.68
上記のようなメソッドが、Math クラスにあればなぁ。