两个相差为2的素数称为素数对,如5和7是素数对,9和7不是素数对,2和5不是素数对。输入2个正整数,判断它们是不是素数对,如果是,输出Yes,否则输出No。
时间: 2024-11-20 22:42:07 浏览: 10
为了判断两个给定的正整数是否构成素数对,你需要编写一个程序来检查每个数是否为素数,然后检查这两个素数之间的差是否为2。以下是一个简单的C++代码示例来实现这个功能:
```cpp
#include <iostream>
#include <cmath>
// 判断一个数是否为素数
bool isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; ++i) {
if (num % i == 0)
return false;
}
return true;
}
int main() {
int num1, num2;
std::cout << "Enter the first number: ";
std::cin >> num1;
std::cout << "Enter the second number: ";
std::cin >> num2;
// 检查两个数是否都是素数
bool bothPrimes = isPrime(num1) && isPrime(num2);
// 检查它们之间是否有2的差距
int difference = abs(num1 - num2);
bool differenceIsTwo = difference == 2;
if (bothPrimes && differenceIsTwo) {
std::cout << "Yes" << std::endl;
} else {
std::cout << "No" << std::endl;
}
return 0;
}
```
在这个代码里,`isPrime` 函数用于检查一个数是否是素数,如果 `num1` 和 `num2` 都是素数,并且它们之间的差(取绝对值)等于2,那么就输出"Yes",否则输出"No"。
阅读全文