XL2000: 不正確的結果,引發 10 非常大/最小的電源

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:214373
本文已封存。本文係以「現狀」提供且不會再更新。
徵狀
在 Microsoft Excel 2000 中如果您鍵入的公式,其值為 10 引發可非常大的電源或非常小的乘冪公式可能會傳回不正確的結果:
   10 Raised to       Expected Result   Actual Result   -------------------------------------------------------------------   very large power   #NUM! error       0, 0.1   very small power   0                 #DIV/0! error, 10^<some value>				
注意: 這類問題不會發生在較早版本的 Microsoft Excel 中。而且,將不會發生問題時引發非常大的電源或非常小的電源; 10] 以外的值,例如: = 9 ^2345678901 正確傳回 # NUM!發生錯誤。
發生的原因
當您輸入的公式,在其中之所以引發 10 的值是為了其中一個下列範圍中的電源時,就會發生這些問題:
  • 大於或等於 2 ^31 (2,147,483,648)。
    -以及-
  • 小於或等於 10 ^308 (後面接著 308 零 1)。
-or-
  • 小於或等於-(2^31) (-2,147,483,648) 到。
    -以及-
  • 大於或等於-(10^308) (-1 後面接著 308 零)。

例如:
   Formula you type          Value returned   ----------------------------------------   =10^2147483648            0				
這個公式應該會傳回 # NUM! 錯誤,因為 Microsoft Excel 中允許的最大的正數是 9.99999999999999E + 307,也就是只要少於 10 ^308。

或者:
   Formula you type          Value returned   ----------------------------------------   =10^-2147483648           #DIV/0!   =10^-4294966989           1E+307				
這些公式應該所有傳回值為 0,因為允許在 Microsoft Excel 中最小正數值是 9.99999999999999E-307 也就是只需大於 0 (零)。
其他可行方案
若要避免這個問題發生,請確定您的活頁簿中的公式請勿引發 10 308 大於或小於-308 的乘冪值。
其他相關資訊
Microsoft Excel 支援正值幾乎一樣 10 大 ^308 (後面接著 308 零是那一個) 幾乎最小 10 ^-308 (一個小數點,後面接著 308 零和一份)。也支援類似的負數值。較小的值會四捨五入為 0 (零) 和較大的值轉換成 # NUM!錯誤值。
googol googolplex 尾數指數 XL2000

警告:本文為自動翻譯

內容

文章識別碼:214373 - 最後檢閱時間:10/14/2013 15:31:15 - 修訂: 3.0

Microsoft Excel 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbprb KB214373 KbMtzh
意見反應