c++求1—300以内的素数的个数,并显示出来,一行显示 10个素数。
时间: 2024-12-24 16:34:44 浏览: 3
为了实现C++求1-300范围内素数的个数,并按每行显示10个素数,你可以结合给出的两个参考代码片段来构建程序。首先,我们需要创建一个`Prime`类来存储素数信息。接着,我们可以修改`primef()`函数以适应1-300的范围,并调整`show()`函数以每行显示10个素数。下面是完整的示例:
```cpp
#include <iostream>
using namespace std;
class Prime {
private:
int a[25];
int n1, n2;
int num;
public:
Prime(int m1, int m2) : n1(m1), n2(m2), num(0) {
// 初始化范围
}
void primef() {
for (int i = n1; i <= n2; ++i) {
bool is_prime = true;
for (int j = 2; j * j <= i; j++) {
if (i % j == 0) {
is_prime = false;
break;
}
}
if (is_prime && i > 1) {
a[num++] = i;
if (num % 10 == 0) {
// 每行显示10个素数
show();
}
}
}
}
void show() {
for (int k = 0; k < min(num, 10); k++) {
cout << a[k] << " ";
}
if (num > 10) {
cout << endl;
}
}
};
int main() {
Prime p(1, 300);
p.primef();
return 0;
}
```
运行这段代码后,它会计算1-300之间的素数个数,并按照每行10个的方式显示这些素数。
阅读全文