に素数を検索するとき、私はnum1
とnum2
間の素数を見つけるために見つけるためにしようとしていますが、私の入力は1,10間違った出力一定間隔
#include <iostream>
using namespace std;
void prime(int num1, int num2)
{
bool prime = 1; // prime=1 means the number is prime
for (num1; num1 <= num2; num1++)
{
for (int i = 2; i < num1; i++)
{
if (num1 % i == 0)
{
prime = 0;
break;
}
}
if (prime == 0)
{
cout << num1 << " Is not Prime" << endl;
}
else
{
cout << num1 << " Is prime" << endl;
}
}
}
int main()
{
int num1, num2;
cout << "Enter 2 numbers to check the prime numbers between them:";
cin >> num1 >> num2;
prime(num1, num2);
}
....これを試してみてください。コードをステップ実行したときにデバッガはあなたに何を表示しますか?それを使う方法がわからない場合は、今すぐ学びましょう。あなたはこの種の問題を将来自分自身で理解することができ、コードがどのように処理されているかについてたくさん学ぶことができます。 –
1は定義上、素数ではありません。しかし、あなたのコードが素数だと思うように> = 2の要素はありません。 –
トピックオフ:リサーチプライムナンバーシーブス。 – user4581301