2011-07-28 18 views
3

コードを書き込もうとしていますが、大きな数字を格納する場所は大きな番号を格納することです。大きな数字をC++またはcに格納する

10^100です。この大きなは、任意の提案

+0

これを自分で行うつもりなら、この投稿を見てください。http://stackoverflow.com/questions/269268/how-to-implement-big-int-in-cそうでなければ、GMPは良い選択です... –

答えて

4

任意精度にライブラリを使用して数

です。心に浮かぶ非常に普及したものはGMPです。これはCライブラリですが、素晴らしいC++インターフェイスも備えています。それはパフォーマンスのために最適化されており、広く使われているのでおそらくかなり堅牢です。

3

のいずれかを使用することができ++ Cで -

最も人気のある、おそらくGNU MPです。非常にまれに1種類の量がそれほど変化しません。任意の精度ライブラリは悪い考えではありません...しかし、速度を正確に犠牲にすることができれば、浮動小数点を使うことができます。

+0

真。 「大きな数字」を表すことは、アプリケーションからのトレードオフです。 Arbitrary Precision Bignumの使用は、精度が他の基準を上回る場合にのみ有効です。 – AraK

2

整数精度が必要ですか?もしそうなら、GMPはそうでなければ、浮動小数点または二重が行います。

1

このような大きな数値(10^100)は、「力に」という意味で、整数型のいずれにも当てはまりません。浮動小数点型(ここではdoubleが好き)とpow()を使用できますが、精度は低下します。 100桁以上の精度の整数が本当に必要な場合は、サードパーティのBigInt実装の1つを取得して使用してください。 100桁の精度が必要ない場合は、言語の一部であるdoubleを使用します。

関連する問題