Description
输入一个整型数,判断是否是对称数,如果是,输出yes,否则输出no,不用考虑这个整型数过大,int类型存不下,不用考虑负值;
例如 12321是对称数,输出yes,124421是对称数,输出yes,1231不是对称数,输出no
Input
一个整型数
Output
输出是yes,或者no
思路:所谓的对称数就是从左往右看和从右往左看是一样的。那么,将给的数从右往左得到他的逆置数,1234的逆置数是4321,12321的逆置数还是12321.如果逆置数==原数,那么就是对称数。
#include<stdio.h>
int main(){
int a;
int b=0;
scanf("%d",&a);
int a1=a;
while(a){
int tem=a%10;
b+=tem;
b*=10;
a/=10;
}
if(a1==b/10){
printf("yes");
}else{
printf("no");
}
return 0;
}
C语言代码如上:
其中,
所以:如果a1==b/10,那么是逆置数,否则不是。
得到元素的逆置数的过程为: