次の素数計算機

1,000,000,000,000以下の整数を入力すると、それより厳密に大きい最初の素数が分かります。

整数 n

次の素数

101

差 p - n1
調べた奇数候補1

100より厳密に大きい最初の素数です。以下の説明を読んでください。

次の素数を求める仕組み

数列の中で入力値より後の最初の素数を示す図

0以上の整数nを入力すると、nより厳密に大きい最初の素数pを求めます。結果にはpとの差と、実際に判定した奇数候補の個数も表示されます。

「次」は入力値を含まない

p=min{qPq>n}p = \min \{q \in \mathbb{P} \mid q > n\}

条件はq > nです。nが17のような素数でも17は返さず、答えは19になります。左右の距離を比べる「最も近い素数」とは別の問題です。

探索はn + 1から始まります。2より小さい場合は2を採用します。2を過ぎた後は偶数がすべて合成数なので、奇数だけを候補にできます。

奇数候補については、その平方根まで割り切れる数がないか確認します。合成数なら少なくとも一方の因数が平方根以下にあるため、この範囲で約数が見つからなければ素数です。

手計算で確かめやすい例

0と1から始める場合

n = 0ではp = 2、差は2です。n = 1でもp = 2ですが差は1になります。どちらも候補は1個です。

途中に合成数がある場合

n = 14では、まず15を調べます。15は3で割り切れるため不採用です。次の17は素数なので、答え17、差3、候補2個になります。

候補が複数続く場合

n = 1000では1001、1003、1005、1007、1009を順に調べます。最初の4つは合成数で、1009が素数です。差は9、候補は5個です。

表示される個数と入力範囲

入力範囲は0から1,000,000,000,000までの整数です。上限を入力すると答えは1,000,000,000,039、差は39、奇数候補は20個になります。上限は入力nに対するもので、結果pは少し上回ることがあります。

この範囲では丸めや確率的な判定を使いません。小数、負の数、空欄は受け付けません。何百桁もの整数には別の大整数用アルゴリズムが必要です。

次の素数に関する質問

入力値が素数の場合と、偶数を飛ばす理由を押さえると結果を確認しやすくなります。

入力した数が素数なら、そのまま答えになりますか?

なりません。入力値より大きいことが条件です。17を入力した場合は19を返します。

最も近い素数を探していますか?

いいえ。小さい側は比較せず、大きい側にある最初の素数だけを探します。

1が素数ではないのはなぜですか?

素数には正の約数がちょうど2個必要です。1の正の約数は1だけなので、次の素数は2です。

偶数は候補数に入りますか?

2以外の偶数はすべて合成数なので、探索中は飛ばし、候補数にも入れません。

結果が入力上限を超えてもよいのですか?

はい。上限は入力値に適用されます。上限入力の次の素数は1,000,000,000,039です。

結果は必ず素数ですか?

指定範囲では平方根までの約数を正確に調べるため、結果は確定した素数です。

類似の計算機

同じトピックに関する次の計算機が役立つかもしれません:

ソーシャルメディアで共有する

気に入ったら、計算機をソーシャルメディアプラットフォームで共有してください。あなたにとっては簡単で、プロジェクトのプロモーションにとっては有益です。ありがとうございます!