對這文章發表回應
發表限制: 非會員 可以發表
發表者: 冷日 發表時間: 2015/2/5 10:27:32
[C#]無條件進位,無條件捨去及四捨五入寫法
今天上班臨時被同事問題這個作法要怎樣寫,一時還真的忘記要如何寫,腦中只要很笨的substring方式。
後來,頭腦清醒了一下,大概把寫法記錄下來,以免之後又忘記了
1.無條件進位
double s = 100;
int result = 0;
result = Convert.ToInt16(Math.Ceiling(s / 3));
2.無條件捨去
double s = 100;
int result = 0;
result =Convert.ToInt16( Math.Floor(s / 3));
3.四捨五入
用法:Math.Round(計算值,小數點第幾位)
double s = 110;
double result = 0;
result = Math.Round((s / 3), 2);
亂馬客之提醒:若是要呈現一般認知的四捨五入需加入第三個參數-MidpointRounding.AwayFromZer
Example:System.Math.Round(1.235 , 2, MidpointRounding.AwayFromZero)
MSDN說明: http://msdn.microsoft.com/zh-tw/library/ef48waz8(v=VS.100).aspx
原文出處: [C#]無條件進位,無條件捨去及四捨五入寫法 - 邁向程式殿堂- 點部落