2010-01-29 29 views
6

我正在用C#編寫一個程序,該程序假設要計算非常小的數字。然而,我所有的計算都得到了NaN值,因爲它們對於'double'數據類型來說太小了。C# - 非常小數字的問題 - 雙數據類型中沒有足夠數字

在C#中是否有一個選項來處理這種情況?

謝謝, 伊甸園。

+0

什麼是「非常小」的數字?你在做什麼的例子? – 2010-01-29 23:25:09

+0

定義「非常小的數字」。請給出一個計算NaN的例子。 – 2010-01-29 23:27:38

+0

如何獲得NaN只有非常小的(eps-like)值?我只能想到1.0/x,其中x很小。但那會導致+無窮大。它必須是在某個時候引入的NaN。 – 2010-01-29 23:47:26

回答

2

嘗試decimal

編輯: 此外,.NET 4中引入了BigInteger這也許可以用來表示任何浮點值\ DATA系列您的試圖代表。

+0

作爲一個大的「整數」,我認爲它不會存儲浮點值。您必須使用一個BigInteger作爲係數,第二個作爲科學記數法形式的指數。 – 2010-01-29 23:39:24

+1

或者您使用的定點算術的精度超過500個十進制數字。 – 2010-01-29 23:49:21

+0

SealedSun解釋了我在建議BigInteger時未能解釋的內容,謝謝。 – RedDeckWins 2010-01-29 23:54:47

相關問題