少し前に、ブール関数をコーディングして数値が素数かどうかをチェックする方法に関する質問への回答を得ました: bool function for prime numbers。
このことから、動作するコードは
bool prime(int x)
{
if (x < 2) return false;
for(int i=2; i<= sqrt(x); i++) {
if ((x%i) == 0) return false;
}
return true;
}
ただし、コードを次のように変更すると
bool prime(int x)
{
if (x < 2) return false;
for(int i=2; i<= sqrt(x); i++) {
if ((x%i) != 0) return true;
}
return false;
}
数値が多くの整数に対して素数であるかどうかを正しく判断できません。私は、これら 2 つのコード セグメントは同等であると考えていました。このbool prime
関数を で動作させる方法はあります!=
か?
ありがとう。