蓝桥杯特殊回文数c++
时间: 2024-03-18 15:36:22 浏览: 96
蓝桥杯特殊回文数是指一个数的平方具回文性质,并且该数本身也是回文数。下面是一个用C++实现的蓝桥杯特殊回文数的示例代码:
```cpp
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
bool isPalindrome(string str) {
int left = 0;
int right = str.length() - 1;
while (left < right) {
if (str[left] != str[right]) {
return false;
}
left++;
right--;
}
return true;
}
int main() {
for (int i = 1; i <= 256; i++) {
string numStr = to_string(i);
int square = pow(i, 2);
squareStr = to_string(square);
if (isPalindrome(numStr) && isPalindrome(squareStr)) {
cout << i << "的平方是" << square << endl;
}
}
return 0;
}
```
这段代码会输出1到256之间的特殊回文数及其平方。其中,isPalindrome函数用于判断一个字符串是否为回文数,通过比较字符串的左右字符判断。在主函数中,我们遍历1到256之间的数,将每个数转换为字符串,并计算其平方。然后,判断该数和其平方是否都是回文数,如果是,则输出该特殊回文数及其平方。
阅读全文