定义函数int prime(int n),判断n是否为素数;在main函数中输入整数m,调用prime函数求大于m的10最小素数之和的源程序之和。
时间: 2024-02-21 16:58:55 浏览: 22
以下是符合你要求的源代码:
```c++
#include <iostream>
using namespace std;
bool is_prime(int n) {
if (n < 2) {
return false;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int prime(int n) {
if (is_prime(n)) {
return n;
}
int i = n + 1;
while (!is_prime(i)) {
i++;
}
return i;
}
int main() {
int m;
cout << "请输入m: ";
cin >> m;
int sum = 0;
for (int i = 0; i < 10; i++) {
m = prime(m);
sum += m;
m++;
}
cout << "大于m的10个最小素数之和为: " << sum << endl;
return 0;
}
```
在这个程序中,我们定义了一个 `is_prime` 函数,用来判断一个数是否为素数。接着定义了 `prime` 函数,用来找到大于等于给定数的最小素数。最后在 `main` 函数中输入一个数 `m`,然后调用 `prime` 函数10次,每次找到的素数加起来就是大于 `m` 的10个最小素数之和。