#include<iostream> using namespace std; //经典求回文数的问题 //打印所有不超过n(取n<256)的其平方具有对称性质的数(也称回文数)。 int len[10]; int i; int main(){ for(int m = 1;m < 256;m++){ int k = 0;//记录反向的回文的加和 int square = m*m; int t = 1;// for(i = 0;square!=0;i++){ len[i] = square%10; square/=10; } for(;i > 0;i --){ k += len[i - 1] * t; t *= 10; } if(k == m*m) cout << m*m << endl; } return 0; }
#include<iostream> using namespace std; bool Palindrome(int x){ int y = x; int num = 0; while(y){ num = num * 10 + y%10; y/=10; } if(num == x) return 1; else return 0; } int main(){ int n = 121; cout << Palindrome(n) << endl; return 0; }