素数表                     戻る     

 素数とは、1以外の数で1と自分自身しか約数がない整数のことをいう。

例えば、2、3、5、7、・・・などが素数である。

素数が無限個あることは、紀元前300年頃、ユークリッドにより、示されている。

 もし、素数が有限個とすると、最大の素数Nが存在する。このとき、2からNまでの全ての
素数の積に 1 を加えた数Mを作ると、MはNより大きい整数で、MはN以下の全ての素数
では割り切れない。ということは、Mは素数かまたはNより大きい素数で割り切れる。いず
れにしても、これは、Nが最大の素数であることに矛盾する。よって、素数は無限個ある。

                                           (ユークリッド原論)


(追記) 令和4年3月1日付け

 素数は無限個存在するが、いったいどこに存在するのだろうか?このことを示す重要な定
理として、ベルトラン=チェビシェフの定理が知られている。ベルトランが予想し、チェビシェ
フが証明したものである。

ベルトラン=チェビシェフの定理  x≧2に対して、xと2xの間に必ず素数が存在する。

例 2と4の間には、素数3が存在する。

例 4と8の間には、素数5や7が存在する。


 素数が無限個あることが分かったので、素数全てを求めるという野望は放棄せざるをえ
ない。そのかわり、ある数が素数かどうかを能率的に判定する方法や素数がどんなふうに
出現するのかなど、興味の種は尽きない。

 与えられた整数 n が素数かどうかは、2、3、5、7、...と n より小さい素数でどんどん
割っていき、割り切れなければ、素数である。

 どこまで割っていくのかというと、n の平方根以下で十分である。

素数の抽出には、エラトステネスの篩(ふるい)法が有名である。


 「エラトステネスの篩」について、GAIさんからのご投稿です。(令和3年3月1日付け)

 エラトステネスの篩でチェックされていく順に並べた表を作ってみました。

 第一行が2を先頭にその倍数が限りなく右に並んでいきます。(都合のため15個並んだ
地点で止めたものと解釈してください。)

 次の第二行はチェックを受けていない最小の数(3)からその倍数をチェックしていきます。
但し6は既にチェック済みなので、この行には入りません。

 以下同様にして、チェックされていく順番に下にさがっていきます。

[ 2    4    6    8   10   12   14   16   18   20   22   24   26   28   30 ..]
[ 3    9   15   21   27   33   39   45   51   57   63   69   75   81   87 ..]
[ 5   25   35   55   65   85   95  115  125  145  155  175  185  205  215 ..]
[ 7   49   77   91  119  133  161  203  217  259  287  301  329  343  371 ..]
[11  121  143  187  209  253  319  341  407  451  473  517  583  649  671 ..]
[13  169  221  247  299  377  403  481  533  559  611  689  767  793  871 ..]
[17  289  323  391  493  527  629  697  731  799  901 1003 1037 1139 1207 ..]
[19  361  437  551  589  703  779  817  893 1007 1121 1159 1273 1349 1387 ..]
[23  529  667  713  851  943  989 1081 1219 1357 1403 1541 1633 1679 1817 ..]
[29  841  899 1073 1189 1247 1363 1537 1711 1769 1943 2059 2117 2291 2407 ..]
[31  961 1147 1271 1333 1457 1643 1829 1891 2077 2201 2263 2449 2573 2759 ..]
[37 1369 1517 1591 1739 1961 2183 2257 2479 2627 2701 2923 3071 3293 3589 ..]
[41 1681 1763 1927 2173 2419 2501 2747 2911 2993 3239 3403 3649 3977 4141 ..]
[43 1849 2021 2279 2537 2623 2881 3053 3139 3397 3569 3827 4171 4343 4429 ..]
[47 2209 2491 2773 2867 3149 3337 3431 3713 3901 4183 4559 4747 4841 5029 ..]
[・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・]


 一応15行まで下がった地点までの15×15行列として表を眺めてみると、右下対角線に並
んでくる数列

 2,9,35,91,209,377,629,817,・・・

には面白いことに、

  [n番目の素数]*[(2*n-2)番目の素数] (n=2,3,4,・・・)

という関係の数が勢揃いすることになる。

2=2 、3*3=9 、5*7=35 、7*13=91 、11*19=209 、13*29=377 、17*37=629 、19*43=817
23*53=1219 、29*61=1769 、31*71=2201 、37*79=2923 、41*89=3649 、43*101=4343
47*107=5029 、53*113=5989 、59*131=7729 、61*139=8479 、67*151=10117
71*163=11573 、73*173=12629 、79*181=14299 、83*193=16019 、89*199=17711
97*223=21631 、101*229=23129 、・・・・・・


 整数 n より大きくない素数の個数を π(n) とする。

n が十分大きいとき、π(n) の値は、n÷ln(n) の値にほぼ等しい
                                      (但し、ln(n) は自然対数)

ということを、数学者ガウスは、1792年15歳のとき発見した。

 この予想は、1896年アダマールとド・ラ・ヴァレー・プサンにより、独立に証明された。

素数定理といわれるこの定理は、数学の中で最も美しい定理の1つといわれている。

 この定理により、与えられた任意の整数 n をこえない素数の個数が大体予知できるよう
になった。

 次に、1000以下の素数表をあげる。

2 79 191 311 439 577 709 857
3 83 193 313 443 587 719 859
5 89 197 317 449 593 727 863
7 97 199 331 457 599 733 877
11 101 211 337 461 601 739 881
13 103 223 347 463 607 743 883
17 107 227 349 467 613 751 887
19 109 229 353 479 617 757 907
23 113 233 359 487 619 761 911
29 127 239 367 491 631 769 919
31 131 241 373 499 641 773 929
37 137 251 379 503 643 787 937
41 139 257 383 509 647 797 941
43 149 263 389 521 653 809 947
47 151 269 397 523 659 811 953
53 157 271 401 541 661 821 967
59 163 277 409 547 673 823 971
61 167 281 419 557 677 827 977
67 173 283 421 563 683 829 983
71 179 293 431 569 691 839 991
73 181 307 433 571 701 853 997

 1000以下の素数は、全部で168個ある。素数定理に当てはめてみれば、144.8なの
で、ほぼ近い。ガウスの偉大さが実感できる。

 因みに、2000以下は、303個(263.1)、3000以下は、430個(374.7)、5000以
下は、669個(482.3)、10000個以下は1229個(1085.7)の素数がある。
                                  ( )内は、素数定理による数値。

(参考文献:M.ラインズ著 片山孝次 訳 「数 その意外な表情」(岩波書店)
        和田秀男著 「数の世界 整数論への道」(岩波書店)
        問谷 力・森本清吾著 「袖珍 数学公式要覧」(山海堂出版部))


(追記) 令和5年5月9日付け

 素数の最初の10項 : 2、3、5、7、11、13、17、19、23、29、・・・ について、覚え方
を考えてみた。皆さんの学習の何某かに活用されれば幸いである。

2(兄)、3(さん)、5(いい)、7(な)、11(意)、13(味)、17(な)、19(く)、23(サン)、29(キュー)


(追記) 平成15年5月18日、矢倉さんという方から、素数の個数について、誤りのご指摘
    をいただいた。検証の結果、ご指摘の通りであるので、本文を訂正した。矢倉さんに
    感謝いたします。

 10000 までの素数表について(→ 参考HP

 また、次のHPでは、素数表を指定した範囲内で作成することができる。(矢倉さん)
  http://www.aiestate.com/prime.php
(上記HPは、矢倉さんが全く実験的に作っただけのページで、遠からず削除することになる
とのことである。そのような事情から、当HPからのリンクを解除させていただきました。
― 2003.5.20)

 上記HPで、試しに、100万以下の素数の個数を計算してみた。結果は、78498個で、
約554.26秒(9分強)要した。思わず感動してしまった!


(追記) 平成20年3月20日付け

 当HPの掲示板「出会いの泉」に、zk43さんが、ある数までの素数を求めるための、Excel
の VBA を利用したプログラムを紹介された。上記で、9分強かかったという一文を読まれて
の書き込みである。zk43さんに感謝いたします。

 n の平方根以下の数で割り算するというアイデアを利用したVBAである。

Sub 素数の個数()
p = 0
For Num = 2 To 1000000
 a = Int(Num ^ 0.5)
 c = 0
For k = 2 To a
If Num Mod k = 0 Then
 c = 1
 Exit For
End If
Next k
 If c = 0 Then p = p + 1
Next Num
Range("A1") = p
End Sub


 Visual Basic Editor を起動させて、標準モジュールに上記を記述し、マクロを実行さ
せればよい。

 私のパソコン(Pentium(R) 4 CPU 2.93GHz)で、早速、Excelに上記のVBAを覚え込ませ
て実行してみたところ、21秒!で78498個と出ました。速かったでね。
(この結果は、らすかるさんのHPにある表の数字と一致している。)

 また、当HPがいつもお世話になっている、らすかるさんは、今年の1月に、素数の個数を
求めるプログラムの高速化に挑戦されたとのことである。

 プログラム言語が、C とアセンプで、アルゴリズムも違うのでVBAのプログラムとは比較で
きないが、実行時間は下記のようであったとのことである。(CPUは Core2 2.4GHz)

 1000万まで: 0.04秒 ・・・・ 0.04秒くらい!(映画のフィルム1コマ分の時間
 1億まで: 0.16秒 ・・・・ 0.2秒くらい!(人間の反応速度
 10億まで: 1.51秒 ・・・・ 2秒くらい!(光が地球から月まで進む時間
 100億まで: 16.3秒 ・・・・ 15秒くらい!(小学5年女子100m記録
 1000億まで: 180秒 ・・・・ 3分くらい!(小学5年男子1000m記録
 1兆まで: 34分 ・・・・ 30分くらい!(大学生10000m記録
 10兆まで: 428分 ・・・・ 7時間くらい!(ウルトラマラソン100km記録
 100兆まで: 108時間3分 ・・・・ 4日半くらい!

(コメント) 私のパソコンで、21秒かかった計算も、らすかるさんのアルゴリズムにかかる
      と、ほんの一瞬で求まってしまうような...雰囲気。いや〜、高速すぎますね!


(追記) 2003年12月3日、過去最大の素数が発見された(検証により、確認)。

 632万430桁の数で、40番目のメルセンヌ数だという。

 ミシガン州立大学の大学院生マイケル・シェイファー(Michael Shafer)さんが中心となっ
て、世界中の200万台を越えるパソコンを結んで、2年がかりの計算で発見されたとのこと
である。

(追記) 2004年5月15日、過去最大の素数が発見された(検証により、確認)。

 24036583−1

 723万5733桁の数で、41番目のメルセンヌ数だという。


(追記) 2005年2月27日、過去最大の素数が発見された(検証により、確認)。

 25964951−1

 781万6230桁の数で、42番目のメルセンヌ数だという。


(追記) 2005年12月15日、過去最大の素数が発見された(検証により、確認)。

 30402457−1

 915万2052桁の数で、43番目のメルセンヌ数なのかな?


(追記) 2006年9月4日、過去最大の素数が発見された(検証により、確認)。

 32582657−1

 980万8358桁の数で、44番目のメルセンヌ数なのかな?


(追記) 2008年8月23日、過去最大の素数が発見された(検証により、確認)。

 43112609−1

 1297万8189桁の数で、47番目のメルセンヌ数なのかな?発見者は、Edson Smith


(追記) 2008年9月6日、過去最大の素数が発見された(検証により、確認)。

 37156667−1

 1118万5272桁の数で、45番目のメルセンヌ数なのかな?


(追記) 2009年4月12日、過去最大の素数が発見された(検証により、確認)。

 42643801−1

 1283万7064桁の数で、46番目のメルセンヌ数なのかな?発見者は、Odd M.Strindmo


(追記) 2013年1月25日、過去最大の素数が発見された(検証により、確認)。

 57885161−1

 1742万5170桁の数だという。48番目のメルセンヌ数なのかな?

 米国・セントラルミズーリ大学のクーパー教授が見つけたと、世界各地のボランティアのコ
ンピュータをつないで素数探しをするプロジェクト、GIMPSが発表した。
(2013年2月7日付け朝日新聞夕刊)


(追記) 2016年1月21日、過去最大の素数が発見された(検証により、確認)。

 74207281−1 (3003764180・・・・・・・1086436351)

 2233万8618桁の数だという。49番目のメルセンヌ数なのかな?

 A4判の紙にびっしり印刷しても約1万枚必要とのことで、その膨大な量に圧倒される。

 米国・セントラルミズーリ大学は、過去最大の素数をクーパー教授が見つけたと、1月21
日、発表した。クーパー教授は、世界各地のボランティアのコンピュータをつないで素数探し
をするプロジェクト「GIMPS」のメンバー。

 2015年9月17日にコンピュータは新たな素数を見つけていたが、発見に気付いたのは、
2016年1月7日であったという。(2016年1月24日付け朝日新聞夕刊)


  (現在知られている最大の素数については、「完全数」を参照)


(追記) 2017年12月26日、過去最大の素数が発見されたようだ。

 77232917−1  十進法では、2324万9425 桁の数だという。

 発見者は、Jon Pace


(追記) 2018年12月、過去最大の素数が発見されたようだ。

 82589933−1  十進法では、2486万2048 桁の数だという。

 メルセンヌ素数についての最新情報


(追記) 当HPの掲示板「出会いの泉」に、当HP読者NHN「ラフィエル」さんが素数を求め
     る式について投稿された。(平成25年3月22日付け)

 素数を求める式で、フェルマー数以外で、これと同じか似たような数式はありますか?

 n+2m (条件: n+m=6x にならない 1≧n−m≧−1、n>0、m>0)

が素数になる、はずです・・・。(高校の授業中に考えたものです。)


 GAI さんからのコメントです。(平成25年3月22日付け)

 n=m=5 の場合、275 となり素数とはなりません。それでも多くの場合が素数になるの
は面白い式ですね。mを200までで調査してみました。

  m;  n|素数
  1;  1|5
  1;  2|11
  2;  1|7
  2;  2|13
  2;  3|31
  3;  2|17
  3;  4|89
  4;  3|43
  4;  4|97
  5;  4|113
  5;  6|761
  6;  5|307
  6;  7|2251
  7;  6|857
  7;  8|6689
  9; 10|59561
 10;  9|20707
 12; 11|181243
 13; 12|539633
 14; 15|14365291
 16; 15|14414443
 18; 17|129402307
 20; 21|10461401779
 23; 22|31389448217
 23; 24|282437925089
 33; 32|1853028778786433
 34; 33|5559077746424707
 35; 36|150094669656737489
 36; 35|50031613818476443
 37; 36|150094772735952593
 47; 46|8862938260389989451257
 48; 47|26588814640432479998443
 48; 49|239299329512092506300739
 50; 51|2153693964201457673153371
 60; 59|14130386092891656009371658043
 64; 63|1144561273449284238959659248043
 81; 80|147808829414348341167722439464732709953
 85; 86|107752636643058216783050887908587014548761
102;101|1546132562196033998179985790209781424093135387507
115;116|22185312344622607536006721455233772938700782582212169489
133;134|8595044557171427132038727205005467577310247078756525985114451161
155;154|29969067287845284806900763424259354345695037325432711901413781193689500137
160;159|7282483350946404208076885502458246684853252953174602126320557669210243328043
174;173|34831892110592771988701292967840845906028956537826662489172367497298175100125242707
175;176|940461086986004843694934910131104208392131088686023657900173332902199657733778583489



 空舟さんからのコメントです。(平成25年3月23日付け)

 3nを5で割った余りは、3、4、2、1 と循環し、2mを5で割った余りは、2、4、3、1 と循環
するので、n=m=5に限らず、n=m=2N+1 の場合は、常に5で割り切れます。

 3n+2m≡0 (mod 7) を解くことを考える。2m≡9m (mod 7) から、

 3n+9m≡0 、3n/9m≡−1 、3n-2m≡−1 (mod 7) となるので、

3≡−1 (mod 7) に注意して、n−2m≡3 (mod 6) の場合は、7で割り切れるはず
です。

 従って、必ず素数になるというわけではないですが、GAIさんの調査のように素数がよく出
てくるようです。

 よく「素数を与える数式」としては、オイラーが見つけたとされる「x2+x+41」という式が有
名だと思います。

 x=41 だともちろん素数にならないですが、x=1からx=39までは全部素数になります。

 この話題については、Webサイト「■素数を表す公式・表さない公式」が参考になると思い
ます。


(追記) 令和2年9月27日付け

 「73939133」は素数で、右側から順に数字を取り去った数

 7393913 、739391 、73939 、7393 、739 、73 、7

も素数であり続ける。素数の中の素数と言われる所以である。この性質を持つ素数として、

  53、317、599、797、2393、・・・、73939133

が知られている。


(追記) 令和3年2月28日付け

 素数表で、1000以下の素数は全部で168個あることが知られているが、この個数に関
する問題が、一橋大学前期(2021)で出題された。

一橋大学 前期(2021)

第1問 1000以下の素数は、250個以下であることを示せ。


 1000以下なので、エラトステネスのふるいでも求められるかな?

 以下は、スマートに包除原理を用いて、2または3または5または7で割り切れる数の個数
を求めてみよう。

(解) 1000以下の自然数で、2の倍数、3の倍数、5の倍数、7の倍数の集合をそれぞれ

 A、B、C、Dとおく。このとき、2または3または5または7で割り切れる数の集合をXとおく。

n(A)で、集合Aの要素の個数を表すものとする。集合の包除原理から、

n(X)=n(A)+n(B)+n(C)+n(D)

    −n(A∩B)−n(A∩C)−n(A∩D)−n(B∩C)−n(B∩D)−n(C∩D)

    +n(A∩B∩C)+n(A∩B∩D)+n(A∩C∩D)+n(B∩C∩D)

    −n(A∩B∩C∩D)

 ここで、

n(A)=[1000/2]=500 、n(B)=[1000/3]=333 、n(C)=[1000/5]=200

n(D)=[1000/7]=142

n(A∩B)=[1000/6]=166 、n(A∩C)=[1000/10]=100

n(A∩D)=[1000/14]=71 、n(B∩C)=[1000/15]=66

n(B∩D)=[1000/21]=47 、n(C∩D)=[1000/35]=28

n(A∩B∩C)=[1000/30]=33 、n(A∩B∩D)=[1000/42]=23

n(A∩C∩D)=[1000/70]=14 、n(B∩C∩D)=[1000/105]=9

n(A∩B∩C∩D)=[1000/210]=4

なので、

n(X)=500+333+200+142−166−100−71−66−47−28
                                  +33+23+14+9−4=772

 772個のうち、2、3、5、7の4個は素数なので、1000以下の自然数には少なくとも768

個の合成数があることが示された。すなわち、素数は、多くても 1000−768=232(個)

あり、1000以下の素数は250個以下であることが示された。  (終)


(追記) 令和4年3月24日付け

 次の素数に関わる問題が、2022年度の女子学院中学入試で出題された。問題は若干
改題しました。

問題  A、Bを整数とし、A以上B未満の素数の個数をA☆Bで表す。次の問いに答えよ。

(1) 10☆50を求めよ。

(2) (20☆A)×(A☆B)×(B☆50)=9 となるA、Bの組のうち、A+Bが最も大きくな
  るようなA、Bの値を求めよ。


 解答に入る前に、10以上で50未満の素数は、冒頭の素数表で、

  11 、13 、17 、19 、23 、29 、31 、37 、41 、43 、47

の11個あることが分かる。よって、(1)は容易だろう。

(解)(1) 10☆50=11

(2) (20☆A)×(A☆B)×(B☆50)=9 において、20☆A、A☆B、B☆50が1以上の
   整数であることを考えると、起こり得る場合は、A、Bが最大を考えて

  20☆A=9、A☆B=1、B☆50=1 → 起こりえない

  20☆A=1、A☆B=9、B☆50=1 → 起こりえない

  20☆A=1、A☆B=1、B☆50=9 → 起こりえない

  20☆A=3、A☆B=3、B☆50=1 → A=37 、B=47

  20☆A=3、A☆B=1、B☆50=3 → A=37 、B=41

  20☆A=1、A☆B=3、B☆50=3 → A=29 、B=41

 以上から、A+Bが最も大きくなるようなA、Bの値は、 A=37 、B=47  (終)


(追記) 令和5年5月13日付け

 ks さんからの情報です。

 素数の一億番目は、「2,038,074,743」 らしいのですが?この手の問題は、9,99,999,
9999,・・・ とかを含む素数とかキリがないですね。求められる努力と技術は尊重します。


 うんざりはちべえさんからのコメントです。(令和5年5月14日付け)

 素数を「2」から 105,080,509個を求めるのに、25秒でできます。まあ、ここでは、ふさわしい
話でもないし、膨大なので、Webにもあげられないし、意味がないですね。求めた最後の5個
は、
 2147117417 、2147117419 、2147117507 、2147117509 、2147117519

でした。



  以下、工事中!