经典回文数

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

  

posted @ 2019-10-21 13:06  香草味羊扒饭  阅读(179)  评论(0编辑  收藏  举报