给定两个数,输出两个数中间的回文素数(包括两个数)c++代码
时间: 2024-10-25 18:13:51 浏览: 32
在 C++ 中,我们可以编写一段代码来寻找给定两个整数之间的回文素数。首先,需要定义一个函数判断一个数是否是回文,然后检查这个数是否是素数。接下来是一个简单的示例:
```cpp
#include <iostream>
#include <string>
using namespace std;
// 判断字符串是否为回文
bool isPalindrome(int num) {
string str = to_string(num);
int start = 0;
int end = str.length() - 1;
while (start < end) {
if (str[start] != str[end])
return false;
start++;
end--;
}
return true;
}
// 判断一个数是否为素数
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;
}
// 找寻并输出两个数之间的回文素数
void findPalindromePrimes(int a, int b) {
for (int i = a; i <= b; ++i) {
if (isPalindrome(i) && isPrime(i))
cout << i << " ";
}
}
int main() {
int num1, num2;
cout << "Enter the range (start and end): ";
cin >> num1 >> num2;
findPalindromePrimes(num1, num2);
return 0;
}
```
在这个代码里,`findPalindromePrimes` 函数遍历两个输入数之间的所有整数,并使用 `isPalindrome` 和 `isPrime` 函数检查它们是否同时是回文和素数。如果找到符合条件的数字,就输出它。
阅读全文