素数判定ツール

整数が素数かどうかを判定し、素数でない場合は最小の約数を表示します。

計算は端末内で行われ、入力値をサーバーへ送りません。

具体例

97は素数で、1,000番目の素数である7,919も素数です。91は91 = 7 × 13なので素数ではなく、221も221 = 13 × 17なので13で割り切れます。

計算方法・仕組み

最初に2と偶数を処理し、その後は入力した数の平方根までの奇数だけで割り切れるかを調べます。平方根より大きい約数があるなら、対になるもう一方は平方根より小さく、すでに見つかっているはずだからです。10億未満で最大の素数999,999,937でも試し割りは約15,800回で済むため、結果はほぼ即座に表示されます。

注意事項

2から1,000,000,000までの整数を入力してください。素数は正の約数がちょうど2つある数なので、1は素数ではありません。素数かどうかは整数に対する性質のため、小数は受け付けません。素数でない場合は、1より大きい最小の約数を表示します。

判定する内容

2から1,000,000,000までの整数を入力します。素数は正の約数が1と自分自身の2つだけの数です。97は素数で、1,000番目の素数である7,919も素数です。素数でない場合は、1より大きい最小の約数を表示します。91は91 = 7 × 13なので7で割り切れます。1は素数ではなく、2は唯一の偶数の素数なので、それ以外の偶数はすべて「2で割り切れる」と表示されます。

平方根までで判定を終える理由

ある数に平方根より大きい約数があれば、それと組になる約数は平方根より小さく、すでに見つかっているはずです。そのため、判定は平方根までの奇数だけを試します。221は13まで調べた時点で終わり、221 = 13 × 17です。10億未満で最大の素数999,999,937でも、試し割りは奇数で約15,800回までなので、ブラウザー上でほぼ一瞬で答えが出ます。

紛らわしい合成数とこのツールの限界

素数に見えても小さな約数を持つ数があります。561は一部の簡易的な確率的判定を通過するカーマイケル数の最小例ですが、3で割り切れます。3の倍数は各桁の和で確かめられ、5 + 6 + 1 = 12は3で割り切れます。小数や範囲外の数は入力できません。このツールは学習や日常の確認向けで、暗号に使う非常に大きな素数の生成には、別のアルゴリズムと安全な乱数が必要です。

計算・使用例
入力結果
97✓
7919✓
999999937✓
91÷ 7
221÷ 13
561÷ 3

よくある質問

素数に見えるのに素数でないことがあるのはなぜですか?

小さな約数は見落としやすいからです。561は最小のカーマイケル数で、簡易な確率的判定を通過してしまうことがありますが、3で割り切れます。各桁の和を使えば分かります。5 + 6 + 1 = 12は3の倍数です。このツールは実際に割って確かめるので、判定は正確です。

なぜ平方根までしか調べないのですか?

約数はペアで現れるからです。221なら13に達した時点で調べ終わります。221 = 13 × 17であり、これより大きい約数は必ず小さい相方と組になっているためです。この仕組みのおかげで、10億近い数でも判定が速く終わります。

暗号用の素数にも使えますか?

いいえ。このツールは学習や日常の確認向けで、対象は1,000,000,000までです。暗号で使う素数は数百桁あり、確率的な判定法と安全な乱数で生成されます。試し割りでは現実的な時間で扱えません。

関連ツール