|
學(xué)技術(shù),重在日拱一卒、一點(diǎn)一滴的積累。
今天,我們一起來分析C語言的算法:三重回文。
算法:找出3~999之間的所有的三重回文數(shù)字,并輸出3-999之間的所有三重回文數(shù),每行一個(gè)。
三重回文數(shù)既一個(gè)整數(shù),它本身,它的平方,它的立方都是回文數(shù)。
編程思路
編程思路:
1、先判定一個(gè)變量i是否是回文數(shù);
2、再判定該變量的平方i*i是否是回文數(shù);
3、最后再判定該變量的立方i*i*i是否是回文數(shù);
4、如果i,i*i,i*i*i都是回文數(shù),就表示該變量是三重回文數(shù),將該數(shù)輸出。
程序范例
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int fun(int m);
/*判斷一個(gè)數(shù)是否為回文子函數(shù)*/
int fun(int m)
{
int temp,s;
temp=0;
s=m;
while(m!=0)
{
temp*=10;
temp+=m%10;
m=m/10;
}
if(temp==s)
{
return 1;
}
else
{
return 0;
}
}
int main()
{
int i;
for(i=3;i<1000;i++)
{
if(fun(i)&&fun(i*i)&&fun(i*i*i))
{
printf("i=%3d i*i=%5d i*i*i=%7d\n",i,i*i,i*i*i);
}
}
}
程序運(yùn)行結(jié)果:
1.jpg (25.85 KB, 下載次數(shù): 51)
下載附件
2022-9-9 14:25 上傳
|
評分
-
查看全部評分
|