0
我需要的輸出閱讀次數那麼這個數是否是質不是。出於某種原因,當它到達11它不會輸出,這是素數,只是打印 11 12這個數字不是素數。問題,我發現環素數
我知道那裏有一個合乎邏輯的問題,我while循環,但我不明白。任何幫助表示讚賞。
int main()
{
bool isPrime = true;
int sqrtNum;
int divisor = 3;
for(int i = 0; i < 100; i++)
{
cout << i << "\t";
if (i == 0 || i == 1)
cout << "That number is not prime." << endl;
else if (i == 2)
cout << "That number is prime." << endl;
else if (i % 2 == 0)
cout << "That number is not prime." << endl;
else
{
sqrtNum = static_cast<int> (sqrt(static_cast<double>(i)));
while (divisor <= sqrtNum)
{
if (i % divisor == 0)
{
cout << "That number is not prime." << endl;
isPrime = false;
break;
}
else
{
divisor = divisor + 2;
}
}
if (isPrime)
{
cout << "That number is prime" << endl;
}
}
}
system("pause");
retu
沒有U A調試器下運行呢? – pm100 2015-02-09 18:19:50
你忘了isPrime重置每次輪循環 – pm100 2015-02-09 18:20:58
你也忘了在循環重置'divisor'。 – 2015-02-09 18:23:11