用c++寻找下一个素数
时间: 2023-06-17 15:06:09 浏览: 158
C++ 实现求小于n的最大素数的实例
5星 · 资源好评率100%
以下是用 C++ 编写的寻找下一个素数的简单程序:
```c++
#include <iostream>
using namespace std;
bool isPrime(int n) {
if (n <= 1)
return false;
for (int i = 2; i <= sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int nextPrime(int n) {
int next = n + 1;
while (!isPrime(next)) {
next++;
}
return next;
}
int main() {
int n;
cout << "请输入一个正整数:";
cin >> n;
int next = nextPrime(n);
cout << "下一个素数是:" << next << endl;
return 0;
}
```
首先定义一个函数 `isPrime`,用于判断一个数是否为素数。如果该数小于等于 1,直接返回 `false`;否则,从 2 开始遍历到其平方根,如果存在一个因子能够整除该数,则返回 `false`,否则返回 `true`。
接着定义一个函数 `nextPrime`,用于找到大于给定数的下一个素数。首先将该数加一,然后不断判断是否为素数,直到找到为止。
最后,在 `main` 函数中输入一个正整数,调用 `nextPrime` 函数,输出下一个素数。
阅读全文