超高性能素数判定機-Is the number entered a prime number?-

超高性能素数判定機-Is the number entered a prime number?-

by yoshiki_i

👁 6,751 ❤️ 156 ⭐ 151 🔄 6
Created: Jan 3, 2017 Last modified: Jan 2, 2022 Shared: Mar 29, 2017

Description

=========お知らせ=========== NHKで入賞しました!! https://scratch.mit.edu/projects/336132900/ ガウス素数版も開発しました! ======================== =仕組み========================== ①自然数か調べる ②素数リストにその数が無いか調べる ③無ければ最新アルゴリズムで約数があるか調べる。 ④約数があれば素数じゃなく、無ければ素数だと分かる。 ⑤素数ではないなら、素因数分解をする。 =バグ報告のリスト====================== ①奇数を入力しても2で割り切れる。  スクラッチ内部で四捨五入していて、2で割ったあまり=0かつ2で割った ものを1で割ったあまり=0なのでシステム上の問題と解釈しています。 ②数字が大きいとサイトが応答しなくなる。  計算が遅くなるのでやっていませんが、速く処理しようとするシステムの せいだと思います。 ③n≧3においてn^2を入力すると素数と判定されてしまう。  本当になぜ置いたのか分からないブロックが置かれてました。取り除いたところ、正常に動作するのを確認しました。 ④21,33などが素数と判定されてしまう。  判定の順番のミスでした。3が判定されていないことが分かったため、3も判定するように対処しました。 =アップデート情報===================== '18/10/11:素因数分解をやや高速化。   指数型になった場合にエラーを吐くように調整。 '18/10/08:実行中にフリーズしてしまう不具合を解消。  同時に処理時間が0秒となる不具合を解消。  このため計算に時間がかかるようになりました。 '18/6/28:3が判定されないバグを解消。teimon0様、感謝します。 '18/4/30:約数判定アルゴリズム改良。scKei126様、感謝します。 '18/3/18:素数判定の致命的なバグを解消。  scKei126様、感謝します。 '17/11/04:アルゴリズム改良。リスト削除。 '17/6/30:CommandSlash017様の助言により、軽量化に成功。  感謝します '17/6/26:英語テキスト作成 '17/6/25:アルゴリズム改良(更なるスピードを目指す) '17/3/30:累乗式に変更。 '17/3/27:Infinityの例外を作成。apple502j様ありがとうございます。 '17/2/25:進行状況を改良。 '17/2/8:アルゴリズム改良(軽くなったはず)

Instructions

Sorry,I'm not good at English 素数計算機です。 どんなに大きくても15桁程度の自然数なら大丈夫です。 とても処理が早い・・・はずです。 素因数分解のためターボ推奨。 とても大きい数を入力すると時間がかかります。 43876342576439・・・11.458秒かかりました。 412637894216987・・・34.364秒かかりました。 526317852757243・・・34.772秒かかりました。 679719215416513・・・39.669秒かかりました。 113969576398441・・・15.683秒かかりました。

Project Details

Visibility
Visible
Comments
Enabled