2020年の素数日を調べてみた

こんにちは。
2019年も明日で終わりです。
今年はなんとか月に10回ずつサイト更新をすることができました。来年もがんばります。
昨年の最終回に取り上げた素数日の記事が,案外PVが多かったので,今年も取り上げることにします。
今回のアルゴリズム
昨年は,エラトステネスの篩で調べました。
しかし,高々366個の整数が素数か否か調べるには,無駄が多いような気がします。
そこで,今回採用するアルゴリズムは・・・
・・・
・・・
・・・
なんと
・・・
・・・
・・・
試し割り法です。
約数の候補になりうるすべての数で割ってみて,割り切れなければ素数というものです!
ちょ~~~~~~ぉっ素朴なアルゴリズムです。
ちょっとした工夫
しかし,少しだけ工夫します。
2を除く正の偶数は素数ではありません。
同様に3を除く正の3の倍数,5を除く正の5の倍数は素数ではありません。
素数でないことがわかっている数を,繰り返し試しても仕方ありません。
2・3・5の倍数を除くと,割り算を試す回数が結構減りそうです。
試す必要があるのは,30で割った余りが1・7・11・13・17・19・23・29の数だけです。
これを使うと,試す個数が,およそ30個の数のうち8個だけになります。
全体の1/4程度の数について試せば十分そうです。
これをプログラムにしてみます。
実行結果
それでは,実行結果です。
2020年には,25回の素数日があります。
ということで今年はこれでおしまいにします。よいお年をお迎えください。
ディスカッション
コメント一覧
まだ、コメントがありません