問題タブ [largenumber]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 大きな数を処理するソリューションをコーディングする方法は?
私はいくつかのプロジェクトオイラーの問題を行っていますが、ほとんどの場合、計算には int、float、double などを超える大きな数値が含まれます。
まず、多数の問題を回避するために、より効率的な計算方法を探す必要があることを知っています。Bignum ライブラリについて聞いたことがあります。
しかし、学者の興味のために、この問題に対する独自のソリューションをコーディングする方法を知りたいです。
専門家が私を助けてくれますか?(私の言語は C です)
python - Python: どれくらい速いの?
モジュールで使用されているメルセンヌ ツイスターの周期random
は (聞いたところでは) 2**19937 - 1 です。2 進数としては、19937 '1 が連続しています (私の間違いでなければ)。Python はこれを非常に高速に 10 進数に変換します。
変換が必要なのは 2 番目のバージョンだと思いますか?
そして、それは単なるバイナリではありません。これも速いです。(数字を表示するのではなく、文字列に変換された 10 進数の長さを表示します):
タイミング:
問題は、これが実際にどのように行われるかです。
私は感動するのが単純ですか?Python シェルが 5000 か所ほどの場所を一瞬で生成する様子は、まさに圧巻です。
編集:
@dalke と @truppo によって提案された追加のタイミング
result = 0; result += 2**19937
したがって、おそらく変換を強制するように見えます。
java - 2の大きな累乗を操作する効率的な方法
2の累乗をコーディングする最も効率的な方法は、整数のビットシフトを使用することです。
1 << n
私にくれます2^n
int
ただし、またはで許可されている最大値よりも大きい数がある場合long
、2の累乗を効率的に操作するために何を使用できますか?
(数値に対して加算、乗算、除算、モジュラス演算を実行できる必要があります)
c++ - 非常に大きな数を分割するためのアルゴリズム
100〜1000桁のような非常に大きな数を除算する(整数除算、浮動小数点は重要ではありません)ためのアルゴリズム(これは割り当てであるため、サードパーティのライブラリを使用できません)を作成する必要があります。http://en.wikipedia.org/wiki/Fourier_divisionアルゴリズムを見つけましたが、それが正しい方法かどうかわかりません。何か提案はありますか?
loops - Fortran の倍長整数
私は大きな数(〜10 ^ 14)で作業しようとしていますが、それらを保存してその長さのループを反復できる必要があります。
通常のスター表記などを試してみましたkind=8
が、何もうまくいかないようです。次に、huge
組み込み関数とコードを確認しました。
すべての場合で数値 2147483647 が生成されます。どうしてこれなの?64 ビット マシンで gfortran (f95) を使用しています。
bignum ライブラリが必要な場合、どのライブラリが提案されますか?
java - 非常に大きな数の算術演算を最適化する
関数H(n)を計算したいここで
Cはn個の要素の配列です
次のコードは時間がかかりすぎます...これを行うためのより良い方法はありますか?
}
c++ - C ++で非常に大きな数に使用するデータ型はどれですか?
600851475143
プログラムに番号を保存する必要があります。long long int
変数にも保存しようとしましlong double
たが、コンパイルするとエラーが表示されます
私もやってみunsigned long long int
ました。Windowsでg++を実行するためにMinGW5.1.6を使用しています。
番号を格納するためにどのデータ型を使用する必要がありますか?
php - PHPの非常に大きな整数
重複の可能性:
PHPで多数を処理します。
私は完全に役に立たないFacebookアプリを実行しています。PHPの整数のサポートに問題があります。基本的に、ユーザーは自分自身にばかげた数のポイントを与えます。現在の「王」は102,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,002,557,529,927ポイントを持っています。
PHPは大きな整数ではうまく機能しないようです。誰かが特定のポイントを超えて追加しようとすると、PHPはそれらの数値を無限として扱うため、失敗します。
途方もなく大きな数を扱うための数学ライブラリはありますか?数字を文字列として扱い、自分で書く必要がありますか?
私たちは2^20桁以上の長さの数字を話している。それらは正確である必要はなく(エラーは一般にアプリの品質が低いことにチョークで書かれています)、高性能である必要もありません。はるかに長い数を許可するものが必要です。
(興味のある方は、番号をクラウドに保存しているので、保存コストは大きな問題ではありません。)
.net - x32およびx64プラットフォームで.NETを使用する場合、どのような一般的な数学エラーに注意する必要がありますか?
.NETを使用して計算を実行する場合、何に注意する必要がありますか?
たとえば、浮動小数点エラーについては少し知っていますが、CodeProjectに関するこのフォーラムの投稿には慣れていません。.NETベースの数学の知識を完成させて、さまざまなビットサイズのパラメーターと結果を操作する方法をアドバイスできるようにするには、何を知っておく必要がありますか。
python - Pythonでの大きな整数のフォーマット
私はスクリプトで大きな整数を扱っていますが、それぞれ数千、数百万、または数十億のスケールを示すため'K'
に、'M'
および接尾辞の文字を使用して数値を文字列にフォーマットしたいと思います。'B'
自分の関数をロールするのではなく、これを「すぐに使える」機能、または少なくともこのタイプのフォーマットを行う独自の関数を作成するときに役立つ組み込み関数があるのではないかと思います。