C++回文数的形成,第1张

C++回文数的形成,第2张

不知道回文的形成规律有没有被数学证明。如果有,朋友可以告诉我是编程验证的。

规则:任意一个十进制整数,把它转过来,加到原整数上。得到一个新的整数后,重复上述步骤,最后得到一个回文。

#包括

#define MAX 2147483648 //限制M+N的范围

re(long int a)//查找输入整数的逆序

{

long int t;

for(t = 0;a > 0;A/=10)//反转整数顺序

t = t * 10+a % 10;

return t;

}

non re(long ints)//判断给定的整数是否为回文。

{

if(re(s)==s)

返回1;//是的,它返回1

其他

返回0;//不返回0

}

void main()

{

long int n,m;

int count = 0;

printf("请选择性地输入一个数字:");

scanf("%ld ",& n);

printf("回文的生成过程:\ n ");

而(!non((m = re(n))+n))//判断一个整数在其逆序相加后是否为回文。

{

If((m+n)>=MAX)//超过极限时输出提示信息。

{

printf("输入错误,中断。\ n ");

打破;

}

其他

{

printf("[%d]:%ld+%ld=%ld\n ",++count,n,m,m+n);

n+= m;//累加

}

}

printf("[%d]:%d+%ld=%ld\n ",++count,n,m+n);

printf(“这里我们终于达到了目的。\ n ");//输出回文的个数。

}

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » C++回文数的形成

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情