■エラトステネスのふるい(その8)
(その7)において,
[3](5以外の)5の倍数をふるい落とす
0 1 2 3 4 5 6 7 8 9
0: 2 3 5 7
1: 11 13 17 19
2: 23 29
3: 31 37
4: 41 43 47 49
5: 53 59
6: 61 67
7: 71 73 77 79
8: 83 89
9: 91 97
この段階でふるい落とされていない数は28個.
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
[4](7以外の)7の倍数をふるい落とす
0 1 2 3 4 5 6 7 8 9
0: 2 3 5 7
1: 11 13 17 19
2: 23 29
3: 31 37
4: 41 43 47
5: 53 59
6: 61 67
7: 71 73 79
8: 83 89
9: 97
この段階で素数が25個でている.
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
[5](11以外の)11の倍数をふるい落とす
0 1 2 3 4 5 6 7 8 9
0: 2 3 5 7
1: 11 13 17 19
2: 23 29
3: 31 37
4: 41 43 47
5: 53 59
6: 61 67
7: 71 73 79
8: 83 89
9: 97
素数が25個から,ふるい落とされるものがない.
10^2>99なので,これで99以下の素数はすべて求められたことになる.7の倍数をはじいたところで,8,9,10の倍数はすでに消えているので,11の倍数をはじく必要はない.
2から1000までのすべての数字を書き出すところから始めた場合,1000以下の素数をすべて求められたことになるのには,
√1000=31.6
すなわち,2〜1000の整数から,2の倍数,3の倍数,5の倍数,・・・をふるい落としていって,31を残しその他の31の倍数を消せばすべての作業が終了したことになる.
===================================