Deprecated: Assigning the return value of new by reference is deprecated in /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php on line 25

Deprecated: Assigning the return value of new by reference is deprecated in /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php on line 30

Warning: Cannot modify header information - headers already sent by (output started at /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php:25) in /home/users/2/floppy.jp-999953/web/kagakusukimono/class/View.php on line 81
科学好き者の日々::素数を求める

素数を求める

コンピューターのプログラミングを始めてやったとき、例題として素数を求める問題をしましたね。
アルゴリズムが簡単で、直感的に理解しやすいため、いまでもプログラミングとはなにか?と説明するときに使うときがあります。

最も、学校を卒業して何十年もたつ人に「素数」といっても忘れていますね。素数とは1とその数でしか割り切れない数ですね。
2,3,5,7,11,13.。。。などの数です。

アルゴリズムは
ある数(被除数)を2から順に1づつ大きくしていく数(除数)で割っていって、途中で割り切れれば(余りが0ならば)素数ではないのである数を+1する、ある数と割る数(除数)が等しくなったら、素数なのでその数を印刷する。ある数を+1する
これを必要な数まで繰り返す

実際には偶数は素数ではない(2で割り切れる)のでそれは除くとかの高速化するための工夫やエラトステネスのふるいなど違った方法もありますね。




Calendar
<< May 2024 >>
SunMonTueWedThuFriSat
   1234
567891011
12131415161718
19202122232425
262728293031
search this site.
tags
archives
recent comment
recent trackback
others
admin