問題已解決
用round公式保留兩位小數后為什么求和后8位小數



Round公式用于保留指定位數的小數,它有一個自帶函數round(x,n),參數x為待舍入的數,參數n為保留的小數位數。當參數n=2時,round(x,n)可以保留指定精度的小數,但是由于浮點數的原因,在求和的時候,有時會出現精度不夠的情況,從而導致求和的結果超過了預期的多余2位小數。
舉個例子,將三個小數0.123,0.456,0.789舍入到2位小數:
round(0.123,2)的結果為0.12
round(0.456,2)的結果為0.46
round(0.789,2)的結果為0.79
按照精確到2位小數的要求,三個數求和后,結果應為1.37;但是,如果對此數進行浮點數運算,則會出現精度不夠的情況,從而得到1.370000000000001。
因此,當使用round公式保留兩位小數后求和時,有時會得到8位小數。
拓展知識:
浮點數在計算機中是以二進制表示的,而不是以十進制表示,因此在某些情況下,它無法精確表示某些數字,這就導致了計算精度的損失,從而導致求和的結果超過了預期的多余2位小數。
2023 01/17 20:08
