Toolify

素数判定ツール(素因数分解付き)

10^18以下の非負整数を入力。試し割り法で素数判定(10^15程度まで合理的時間内に決定的判定可能)、合成数なら素因数分解を表示します。

97
は素数
前の素数
89
次の素数
101

仕組み

素数とは

素数は1より大きい自然数で、1とその数自身以外の正の約数を持たないもの。最初の素数: 2、3、5、7、11、13、17、19、23、29、31、37。整数算術の「原子」 — 2以上の整数すべては素数の積として一意に表せます(算術の基本定理)。

1は慣例的に素数ではない。0と負の数も素数ではない。2は唯一の偶数素数 — 他の偶数はすべて2で割れるため合成数。

判定の仕組み

試し割り法を使用: 2で割れるか、次に3、5、7、11、…と√nまで確認。どれでも割り切れなければnは素数。6k±1最適化を使い、6k+1または6k-1の形(3超のすべての素数はこの形)の候補のみ確認、検査数を1/3に削減。

試し割り法はnが10^15程度までは高速(サブ秒)。それ以上はミラー・ラビン(確率的)やAKS(決定的)など高度なテストが必要。極端な入力でブラウザがフリーズしないよう10^18で制限。

素数が重要な理由

暗号学: RSA暗号は約1000桁の素数2つを掛けて分解困難な数を生成。安全性は大きな数の素因数分解の困難さに依存 — 数千年研究された課題。

数学教育: 素因数分解は基礎。最大公約数、最小公倍数、剰余、分数、数論の概念すべてが素因数構造に基づきます。

コンピュータサイエンス: ハッシュテーブルサイズ、乱数生成器、多くのアルゴリズムが素数の特異な可除性を活用。

よくある質問

1は素数?

いいえ。1は「単元」であり素数ではない。素数はちょうど2つの異なる正の約数(1とその数自身)を持ちますが、1は1つしかない。

0は素数?

いいえ。素数は1より大きい整数です。

2は素数?

はい — 2は唯一の偶数素数。他のすべての偶数は1とその数自身以外に2を約数に持ちます。

次の素数はどう求める?

n+1から増加させて各ステップで素数判定。任意の数の n × ln(n) 以内に必ず素数が存在するので、大きな入力でも素早く終了します。

なぜ最大10^18?

JavaScript BigIntはより大きな数も扱えますが、試し割り法が遅くなります。10^18は典型的入力でサブ秒判定が安全な境界。それ以上はSymPyやMathematicaなど専用ツールを。

1000桁素数を確認できる?

本ツールでは無理 — 試し割り法はその規模で遅すぎます。暗号学は1024ビット(約300桁)素数にミラー・ラビン確率的テストを使用。

メルセンヌ素数とは?

2^p − 1の形の素数。2025年現在、51個のみ知られています。既知最大の素数(M82589933)は約2,500万桁のメルセンヌ素数。

データは送信されますか?

送信されません。計算はブラウザ内で完結します。

関連ツール

最終更新: