四捨五入的用法

四捨五入的用法

常常遇到要四捨五入的問題,但是如過想要從小數開始推算到指定的小數位,
目前並無FN可用,只自己寫一個來用用

MessageBox.Show(GetRound(10.4464545, 0).ToString()) = 11
MessageBox.Show(GetRound(10.4464545, 1).ToString()) = 10.5
MessageBox.Show(GetRound(10.4464545, 2).ToString()) = 10.45
MessageBox.Show(GetRound(10.4464545, 3).ToString()) = 10.447
MessageBox.Show(GetRound(10.4464545, 4).ToString()) = 10.4465

/// <summary>
/// 四捨五入到需要的數值
/// </summary>        
public static double GetRound(double input, int digit)
{
if (digit < 0 || input <= 0)
{
return Math.Round(input, MidpointRounding.AwayFromZero);
}
double don = input;

int 取幾位 = input.ToString().Substring(input.ToString().IndexOf("."), input.ToString().Length - input.ToString().IndexOf(".")).Length - 1;

for (int i = 取幾位; i >= digit; i--)
{
don = Math.Round(don, i, MidpointRounding.AwayFromZero);
}
return don;
}

 

 

興滿逸筑2013年全新完工,位於恆春鎮外圍離市區只要2分鐘車程,有豪華的外觀、有美麗的庭院、也有溫馨舒適的房間,這裡車流量不多,空氣不錯,適合家族或成群結黨的朋友們一同旅遊的好地方。

http://sinmaniz.tw/index.html