/* [题目]定义一个类prime,用于求在一个指定的范围内素数的个数。 例如:在[3,50]范围内的素数有14个 [编程要求] (1)私有数据成员。 int low:存放给定整数范围的下限 int up:存放给定整数范围的上限 int count:存放满足条件的整数的个数 (2)公有成员函数 prime(int n1, int n2)构造函数,用参数n1,n2初始化下限low和上限up, count的初值为0; void process():在[low, up]范围中找出素数的个数,并把值赋给count; void print ():输出素数的个数. (3)在主函数中定义prime类的对象p,给定的范围为[3,50],通过对象p调用成员函数实现计算及输出调试。 本题要求的输出结果为:[3,50]范围内有14个素数。
时间: 2024-03-17 14:47:17 浏览: 99
下面是实现该题目的代码,可以参考一下:
```c++
#include <iostream>
#include <cmath>
using namespace std;
class prime {
private:
int low;
int up;
int count;
public:
prime(int n1, int n2) {
low = n1;
up = n2;
count = 0;
}
void process() {
for (int i = low; i <= up; i++) {
int flag = 1;
for (int j = 2; j <= sqrt(i); j++) {
if (i % j == 0) {
flag = 0;
break;
}
}
if (flag && i != 1) {
count++;
}
}
}
void print() {
cout << "[" << low << ", " << up << "]范围内有" << count << "个素数。" << endl;
}
};
int main() {
prime p(3, 50);
p.process();
p.print();
return 0;
}
```
输出结果为:
```
[3, 50]范围内有14个素数。
```
阅读全文