とても大きな数を扱うとき、Java では BigInteger などを使うと制限なしです。しかも標準装備。
ここで扱いたい大きな数というのは、ほかでもないメルセンヌ素数です。とんでもなく大きな数となるのでどうしてもライブラリを使う必要があります。
ほかでもないというのは、メルセンヌ素数という形であれば素数であるかの判定が容易という理由から、発見された最大の素数はメルセンヌ素数であるからです。
このプログラムをCで実装しようとすると、GMPなど外部ライブラリが必要となります。GMPを使ったソースです。
このプログラムもC++を使うと分かりやすくなります。初期化、後始末などコンストラクタ、デストラクタで書けるからです。
C#だとこんな感じでしょうか。
Qt: 外部プログラムを起動する
Qt/C++ のアプリは、外部へ直接アクセスできます。これはネットアプリでは不可能な Qt のメリットです。 外部プログラムを起動することもできます。QProcess::startDetached() を使うと独立したプロセスを立ち上げることができます。 この QProces...
-
コンデンサマイク 極性があります コンデンサマイクがようやく届きました。モジュールではないのでそのままでは信号が弱いので使えません。信号を増幅する必要があります。 ちょっとした手間ですが、首尾よく動いてくれました。この回路の応用で、使えるマイクが出来ます。 ...
-
Flask/SQLAlchemy 使ってる方、jinja で困ってませんか? 本体で Python の関数を書いてもいいんですが、テンプレートでも関数が呼べます。 日付を出したい場合、フォーマットなら strftime() が使えます。 わざわざ文字列を作って渡す必...
-
PowerBuilder では Time, Date, DateTime などという型があります。 デフォルトの表示形式から変更する場合は String() 関数を使います。 String(Date('1/12/2016'),'yyyy-mm-dd...