我正在用C#編寫一個程序,該程序假設要計算非常小的數字。然而,我所有的計算都得到了NaN值,因爲它們對於'double'數據類型來說太小了。C# - 非常小數字的問題 - 雙數據類型中沒有足夠數字
在C#中是否有一個選項來處理這種情況?
謝謝, 伊甸園。
我正在用C#編寫一個程序,該程序假設要計算非常小的數字。然而,我所有的計算都得到了NaN值,因爲它們對於'double'數據類型來說太小了。C# - 非常小數字的問題 - 雙數據類型中沒有足夠數字
在C#中是否有一個選項來處理這種情況?
謝謝, 伊甸園。
嘗試decimal
編輯: 此外,.NET 4中引入了BigInteger這也許可以用來表示任何浮點值\ DATA系列您的試圖代表。
作爲一個大的「整數」,我認爲它不會存儲浮點值。您必須使用一個BigInteger作爲係數,第二個作爲科學記數法形式的指數。 – 2010-01-29 23:39:24
或者您使用的定點算術的精度超過500個十進制數字。 – 2010-01-29 23:49:21
SealedSun解釋了我在建議BigInteger時未能解釋的內容,謝謝。 – RedDeckWins 2010-01-29 23:54:47
什麼是「非常小」的數字?你在做什麼的例子? – 2010-01-29 23:25:09
定義「非常小的數字」。請給出一個計算NaN的例子。 – 2010-01-29 23:27:38
如何獲得NaN只有非常小的(eps-like)值?我只能想到1.0/x,其中x很小。但那會導致+無窮大。它必須是在某個時候引入的NaN。 – 2010-01-29 23:47:26