Math.Round ()在四捨五入時有個問題:
Math.Round(2.5,0) = 2;
Math.Round(3.5,0) = 4;
2.5應該等於3才對!
在ASP中也存在這個問題,不過ASP中還有個FormatNumber可以用,但目前還不知道怎麼使用?
解釋:
Math.Round()准確的說,這個函數不是四捨五入,而是四捨六入五湊偶,就是說小於4或大於6的該捨該入是沒有爭議的,而5處在正中間,如果四捨五入則會造成數據的整體偏差,所以采取的原則是:如果捨入位為5,則捨入後最後一位為偶數,這是國際慣例。
現在做的項目都要5入,解決方法:
目前做法是:
如:(3.45*10+0.5)取整,再除以10