双子の素数(双子素数)

最近、週末にProcessingというプログラミング言語で絵をかいて遊んでいます。
Processingは、図形を描画することが得意な言語のようです。以下のように絵を描くことができます。

スポンサーリンク

双子の素数

この絵は素数を表した絵です。は、1000×1000の四角に、10×10の四角形を左上から右下にかけて、1万個並べていき、素数番目の四角形を青又は緑で塗っています。このうち、双子素数は緑で塗り、それ以外の素数は青で塗っています。

素数判定のアルゴリズム

このプログラムでは、N番目の数Nが素数であるか否かを判断する必要があります。素数とは、「1又はその数以外では割り切れない1よりも大きな数」です。このため、Nが2からN-1までの数で割り切れないことを判断する必要があります。プログラムとしては以下のようなイメージです。

for(int p=2 ; p<N ; p++){
q = N%p;
if(q == 0){
r=true;
}
}

演算子%が、左の項を右の項で除算した余りを求める演算子です。この演算結果が、0の場合、割り切れたことになります。割り切れてしまうと素数ではないことがわかります。

双子素数とは

双子素数とは、差が 2となる2つの素数の組を表します。つまり、3と5や、5と7の組み合わせが双子素数になります。9と11は双子素数ではありません。なぜなら、9は3で割り切れるため、素数ではないからです。

タイトルとURLをコピーしました