1、判断一个整型串m是不是回文,例如“123”不是回文,“234432”是回文,“-676”是回文
2、算法思想:
(1)将m的各个数位分开存储
(2)然后判断分开存储的数位的首尾是否相等,相等则说明是回文,否则不是回文。
3、算法如下:
#include <math.h>
#include <iostream>
using namespace std;
int jsvalue(long);
void main()
{
long k;
int i;
cout<<"Enter a long int:";
cin>>k;
i=jsvalue(k);
if(i)
cout<<"OK"<<endl;
else
cout<<"NO"<<endl;
}
int jsvalue(long m)
{
int digit[10];
int lower,upper;
m=labs(m);
upper=0;
do
{
digit[upper]=m%10;
m=m/10;
upper++;
}while(m>0);
upper--;
lower=0;
while(lower<upper)
{
if(digit[lower]!=digit[upper])
return 0;
upper--;
lower++;
}
return 1;
}
#include <iostream>
using namespace std;
int jsvalue(long);
void main()
{
long k;
int i;
cout<<"Enter a long int:";
cin>>k;
i=jsvalue(k);
if(i)
cout<<"OK"<<endl;
else
cout<<"NO"<<endl;
}
int jsvalue(long m)
{
int digit[10];
int lower,upper;
m=labs(m);
upper=0;
do
{
digit[upper]=m%10;
m=m/10;
upper++;
}while(m>0);
upper--;
lower=0;
while(lower<upper)
{
if(digit[lower]!=digit[upper])
return 0;
upper--;
lower++;
}
return 1;
}