問題タブ [biginteger]

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.

0 投票する
3 に答える
7428 参照

java - モジュラー演算を行わずに Java BigInteger を BigInteger の累乗にするにはどうすればよいですか?

私は大規模な整数計算を行っており、BigInteger を別の BigInteger の累乗にする必要があります。.pow() メソッドは私が望むことを行いますが、引数として int 値を取ります。.modPow メソッドは BigInteger を引数として取りますが、計算しようとしている値に一致する答えは必要ありません。

BigInteger 指数が大きすぎて int として表すことができません。この制限を回避する方法を提案できますか?

0 投票する
5 に答える
16860 参照

java - Javaで正確に素数を生成する

おそらく任意のビット長の素数を出力する関数 BigInteger.probablePrime(int bitLength, Random rnd) を認識しています。Java で REAL 素数が必要です。許容できるパフォーマンスでこれを行う FOSS ライブラリはありますか? 前もって感謝します!

編集:

私は 1024 と 2048 ビット素数を見ています。

0 投票する
3 に答える
3443 参照

java - java.math.BigInteger pow(指数) の質問

pow(exponent) メソッドでいくつかのテストを行いました。残念ながら、私の数学のスキルは、次の問題を処理できるほど強力ではありません。

私はこのコードを使用しています:

結果:

  • 変数 | 時間 (ミリ秒)
  • 2000000 | 11450
  • 2500000 | 12471
  • 3000000 | 22379
  • 3500000 | 32147
  • 4000000 | 46270
  • 4500000 | 31459
  • 5000000 | 49922

見る?2,500,000 の指数は、2,000,000 とほぼ同じ速さで計算されます。4,500,000 は、4,000,000 よりもはるかに高速に計算されます。

何故ですか?

参考までに、BigInteger.pow(exponent) の元の実装を次に示します。

0 投票する
1 に答える
9803 参照

c# - C# ランダム BigInt ジェネレーター

DSA アルゴリズムを実装しようとしていますが、問題があります。

512 <= L <= 1024 で、L が 64 の倍数である L ビットの素数 "p" を選択します。

その数の乱数発生器を実装するにはどうすればよいですか? Int6463ビット長「のみ」です。

0 投票する
1 に答える
2408 参照

parsing - BigInteger.Parse() on hexadecimal number gives negative numbers

I've started using .NET 4 System.Numerics.BigInteger Structure and I've encountered a problem.

I'm trying to parse a string that contains a hexadecimal number with no sign (positive). I'm getting a negative number.

For example, I do the following two asserts:

The first assert succeeds, the second assert fails. I actually get -8 instead of 8 in the BigInteger.

The problem seems to be when I'm the hexadecimal starts with 1 bit and not 0 bit (a digit between 8 and F inclusive). If I add a leading 0, everything works perfectly.

Is that a bad usage on my part? Is it a bug in BigInteger?

0 投票する
1 に答える
347 参照

.net-4.0 - BigInteger.ToString()は、50桁を超える10進数を返します

.NET 4 System.Numerics.BigInteger構造を使用していますが、ドキュメントとは異なる結果が得られます。

BigInteger.ToString()メソッドのドキュメントには次のように書かれています。

ToString()メソッドは、小数点以下50桁の精度をサポートします。つまり、BigInteger値が50桁を超える場合、出力文字列には最上位50桁のみが保持されます。他のすべての数字はゼロに置き換えられます。

10進数の60桁を取り、BigIntegerそれをに変換するコードがありstringます。有効数字60桁stringは、有効数字を失いませんでした。

すべてのアサートが合格します。

ドキュメントの引用部分は正確にはどういう意味ですか?

0 投票する
1 に答える
2214 参照

c++ - 非常に大きな整数の乗算と加算

ご挨拶、

テキストファイルに保存されている2つの非常に長い整数値を乗算する必要があります(GMP(正確には、MPIR)を介してエクスポートされるため、どのベースでもかまいません)。さて、私は通常、mpz_inp_str()関数を介してこれらの整数をインポートし、RAMで乗算を実行しますが、これらの値は長すぎるため、実際にロードすることはできません(それぞれ約1 GBのデータ)。これを行うための最速の方法は何でしょうか?おそらく、この種のことをすでに行っている外部ライブラリがいくつかありますか?このための簡単に実装できる方法はありますか(この操作は1回または2回しか実行されないため、パフォーマンスはそれほど重要ではありません)?

tl; dr:プロセスメモリの制限に収まらないほど大きな値を乗算する必要があります(Windows)。

お時間をいただきありがとうございます。

0 投票する
5 に答える
42672 参照

java - java: BigInteger の場合の for ループのしくみ

ユーザーからの入力を Big-Integer として取得し、それを For ループに操作したい

しかし、それはうまくいきません

どんな体でも私を助けることができますか?

0 投票する
9 に答える
106936 参照

java - JavaでBigIntegerをStringに変換する方法

StringaをBigInteger次のように変換しました。

今、私は自分のひもを取り戻したいと思っています。私は使用してm.toString()いますが、それは私に望ましい結果を与えています。

なんで?バグはどこにあり、どうすればよいですか?

0 投票する
5 に答える
2837 参照

c# - BigIntegerの2乗を計算する

.NET4のSystem.Numerics.BigInteger構造を使用しています。

非常に大きな数の2乗(x 2 )を計算する必要があります-数百万の10進数

の場合、次の時間計算量はどのくらいですかxBigInteger

また

.NET 4 BigIntegerを使用して、このような大きな数を最速の方法で乗算するにはどうすればよいですか?Schönhage–Strassenアルゴリズムの実装はありますか?