Convert采用的是银行的舍入原则,而不是Cast的截取原则。
Convert的四舍六入五留双规则:
为了避免四舍五入规则造成的结果偏高,误差偏大的现象出现,一般采用四舍六入五留双规则(Banker's Rounding)。 四舍六入五留双应该改为: 四舍六入逢五无后则留双,这样描述更容易理解和记住.
四舍六入五留双规则的具体方法是:
(一)当尾数小于或等于4时,直接将尾数舍去。
例如将下列数字全部修约为四位有效数字,结果为:
0.53664——0.5366 10.2731——10.27 18.5049——18.50 |
0.58344——0.5834 16.4005——16.40 27.1829——27.18 |
(二)当尾数大于或等于6时,将尾数舍去并向前一位进位。
例如将下列数字全部修约为四位有效数字,结果为:
0.53666——0.5367 8.3176——8.318 16.7777——16.78 |
0.58387——0.5839 10.29501——10.30 21.0191——21.02 |
(三)当尾数为5,而尾数后面的数字均为0时,应看尾数“5”的前一位:若前一位数字此时为奇数,就应向前进一位;若前一位数字此时为偶数,则应将尾数舍去。数字“0”在此时应被视为偶数。
例如将下列数字全部修约为四位有效数字,结果为:
0.153050——0.1530 12.6450——12.64 18.2750——18.28 |
0.153750——0.1538 12.7350——12.74 21.845000——21.84 |
(四)当尾数为5,而尾数“5”的后面还有任何不是0的数字时,无论前一位在此时为奇数还是偶数,也无论“5”后面不为0的数字在哪一位上,都应向前进一位。
例如将下列数字全部修约为四位有效数字,结果为:
0.326552——0.3266 12.73507——12.74 21.84502——21.85 |
12.64501——12.65 18.27509——18.28 38.305000001——38.31 |