用C++编写 寻找双质数函数
时间: 2023-06-17 14:03:14 浏览: 123
下面是一个用 C++ 编写的函数,用于找到一对双质数:
```c++
#include <iostream>
#include <cmath>
using namespace std;
bool is_prime(int n) {
if (n < 2) {
return false;
}
int sqrtn = sqrt(n);
for (int i = 2; i <= sqrtn; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
bool is_twin_prime(int n) {
return is_prime(n) && (is_prime(n - 2) || is_prime(n + 2));
}
void find_twin_prime(int start, int end) {
for (int i = start; i <= end; i++) {
if (is_twin_prime(i)) {
cout << i << " and " << i - 2 << " are twin primes." << endl;
}
}
}
int main() {
int start, end;
cout << "Enter start and end numbers: ";
cin >> start >> end;
find_twin_prime(start, end);
return 0;
}
```
这个函数中,`is_prime` 函数用于判断一个数是否为质数,`is_twin_prime` 函数用于判断一个数是否为双质数,`find_twin_prime` 函数用于遍历指定范围内的所有数字,找到其中的双质数对,并输出。
在主函数中,我们首先询问用户输入起始和结束数字,然后调用 `find_twin_prime` 函数进行计算。
阅读全文