2013-11-02 42 views
1

如何在C++中處理像2^100000000這樣的非常大的整數?在C++中處理大整數

我發現沒有解決方案,在互聯網上給出了確切的答案。

是否有任何機制在C++中爲這樣的大整數提供正確的值?

+4

你在stackoverflow上搜索過嗎?必須至少有一個答案,例如, GMP認證。目前還沒有_standard_方法,但有很多方法。仔細觀察。 – stefan

+1

嘗試搜索[BigNum](http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic)。 – crashmstr

+1

它有點超出了標準範圍稱之爲「整數」 - 你的號碼有3 *百萬*位。也許這就是爲什麼你的搜索沒有成功。 – usr2564301

回答

0

您可以將給定的數字表示爲一個字符串並將其轉換爲具有整數數字的數組。但最簡單的方法谷歌關鍵詞「長算術C++庫」或什麼的。

3

你在找什麼叫做任意精度算術,你會發現許多圖書館和教育資源與一些谷歌搜索。

0

也許你想使用計算機代數系統(CAS),這將是你這樣的表達:

class Pow : public Expr { 
    Number base; 
    Number exp; 
}; 

Pow expr = new Pow(2, 100*1000*1000); 

一個CAS然後讓您操作這些表達式結構,而不是具體值。