回覆列表
  • 1 # 使用者9691270374858

    銀行系統中確實經常會遇到精度誤差,但是跟是否使用四捨五入關係不大。簡單舉個例子,20元分成3份,按四捨五入每份是6.67,按截尾法每份是6.66,無論哪種方法,乘以3後都不能還原成20元。解決方法也很簡單,把所有誤差在最後一份補上就行,即遇到Y分成n份的問題,先計算Y/n得到每份平均值X(用四捨五入或者其他方法保留精度均可),然後前n-1份的值都是X,最後一份的值Xn等於Y-X*(n-1)。回到20元的例子,如果前兩份都是6.67,最後一份就是6.66,如果前兩份都是6.66,最後就是6.68。銀行記賬都是有借有貸,只要保證借貸雙方用的是同一個數字,整個系統中的精度處理規則一致,就不會出現賬務問題。至於使用四捨五入比較多,是因為:1.誤差相互抵消,系統整體來看精度很高。2.接受度廣,幾乎人人都知道四捨五入,也預設是這樣,不用四捨五入反而需要費神解釋。3.銀行處理的多是金額這樣低精度的數(人民幣才到小數點後兩位,日元沒有小數),精度越低對誤差越敏感,把別人的1.239變成1.23,總會有人覺得很不爽。像其他一些高精度的數值,例如黃金重量精確到小數點後6位,用截尾法也不會對最後的金額有明顯影響

  • 中秋節和大豐收的關聯?
  • 花千骨師傅叫什麼名字?