當進位時,若果是介於中間的數,給果會取決於捨位後的數值是基數還是偶數,系統會挑偶數作為捨位後的結果。例如2.5要捨位為整數,結果會是2,因為3是基數。
其實C#的Math.Round()有提供一個overload method可以該我們選擇使用甚麼方式捨位。
Math.Round(Double, MidpointRounding)
MidpointRounding是一個Enumeration,他包括了兩個members:
ToEven
AwayFromZero
ToEven就是原來這個捨位後的最接近的偶數。
AwayFromZero就是四捨五入了。
使用例子:
double naturalNumber = Math.Round( 1.2534, 1, MidpointRounding.AwayFromZero );
結果:naturalNumber會是1.3