我必须找到t个案例的素数。以下输入/输出示例:
Input:
2
1 10
3 5
Output:
2
3
5
7
3
5
注意答案之间的空格。
#include <iostream>
#include <cmath>
bool prime (int x, int y);
using namespace std;
int main()
{
int t, x, y;
cin >> t;
for(int i = 0; i < t; i++)
cin >> x >> y;
for(int i = 0; i < t; i++){
for (int i = x; i <= y; i++)
cout << prime(x, y) << endl;
}
return 0;
}
bool prime(int x, int y){
bool prime = true;
for (int i = x; i <= y; i++){
for (int j = 2; j <= sqrt(i); j++)
if (i % j == 0)
prime = false;
return prime;
}
}
我的程序一直只输出1,为什么会这样?
答案 0 :(得分:3)
您输出prime(x, y)
的结果,即bool
。这将始终为零或一。