目前想出的最好的思路是
把数字反转过来,如果和原来数字相等,那就是回文数
反转需要也仅需要一次遍历。
c++代码如下:
#include<iostream>
using namespace std;
bool isSym(int Num)
{
int reverse = 0;
int Numtemp = Num;
for(;Numtemp;Numtemp/=10)
{
reverse = reverse * 10 + Numtemp % 10;
}
cout<<reverse<<endl;
if(reverse == Num)
return true;
else
return false;
}
int main()
{
int x;
cin>>x;
if(isSym(x)==true)
cout<<"yes"<<endl;
else
cout<<"no"<<endl;
return 0;
}