经典回文数

#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;
}

  

猜你喜欢

转载自www.cnblogs.com/luyuan-chen/p/11712935.html