閱讀451 返回首頁    go 人物


運算問題 : 同一組數字有兩個答案

在以下情況時,我用的excel 2010顯示兩個答案

情況 : 每位員工每天需要完成3項指定工作,本月所有員工需要上班4天,因為每位員工總共需完成的工作為 3 * 4 = 12 項

以下表格利用分數及百分比展示完成量及完成率。

列/欄 A B C D E F G H
1 員工姓名 完成量 完成率
2 員工A 11/12 92%
3 員工B 12/12 100%
4 員工C 12/12 100%
5 員工D 12/12 100%
6 E 12/12 100%
7 F 12/12 100%
8 G 12/12 100%
9 H 12/12 100%
10 I 12/12 100%
11 J 12/12 100%
12 K 12/12 100%
13 L 12/12 100%
14 M 12/12 100%
15 N 12/12 100%
16 O 12/12 100%
17 P 12/12 100%
18 Q 11/12 92%
19 R 10/12 83%

然後,我利用Average公式,計算所有員工的平均完成率[  =average(F2:F19)  ],得出 : 98.1481481481481000% (運算時用準確數字計)

另外,我用另一計算方式驗證,用完成量(分數)來計算平均完成率,計算方法為 : 

(   11    +    12    x   15   +   11    +   10    )    x      1  

(   12           12         1          12          12    )           18

=   11+12x15+11+10

            12x18

=       212    

          216

0.9814814814814820000

從以上運算得出 :    用Average公式     =  98.1481481481481000%

                               用分數運算方式    =  0.9814814814814820000

結論 : 同一組數字,為什麼有兩個答案 ?  (雖然影響不大,但亦希望各位幫忙解答一下)



這是浮點運算造成的誤差。

浮點運算就是實數運算,因為計算機隻能存儲整數,所以實數都是約數,這樣浮點運算是很慢的而且會有誤差。

Excel的計算精度是15位數字,0.981481481481481從數字9開始到最後一位1共15位數字。

比如在A1單元格輸入公式:=4.1-4.2+1=0.9,會返回FALSE,因為4.1-4.2+1居然不等於0.9而是0.899999999999999

這類問題隻能降低精度來解決,比如統一采取四舍五入保留幾位小數。



最後更新:2017-05-12 11:32:52

  上一篇:go win10內部預覽版16179,無法正常使用powerpoint。
  下一篇:go outlook2016 添加了一個69M的附件之後 發件箱一直顯示在發送,且無法刪除 已經好幾個月了