C趣味编程百例(08)求具有abcd=(ab+cd)2性质的四位数
29.求性质为abcd=(ab+cd)2的四位数
3025。这个数有一个独特的性质:把它分成两段,即30和25,把它们加起来求平方,即(30+25)2,正好等于3025本身。用此属性请求所有四位数字。
*题目分析及算法设计
该属性没有四位数的分布规律。可以用穷举法把四位都判断出来,从而筛选出具有这个性质的四位。算法的具体实现可以取任意一个四位数,剪成两部分,前两位是A,后两位是B,然后应用公式计算判断。
*程序描述和注释
# include
void main()
{
int n,a,b;
printf("以下数字有4位满足条件\ n ");
for(n = 1000;n {
a = n/100;/*截取N的前两位,保存在a*/
b=n%100中;/*截取n的最后两位数存入b*/
if((a+b)*(a+b)==n) /*判断n是否为符合题目中指定性质的四位数*/[br/] printf ("%d ",n);
}
}
*运行结果
满足条件的4位数如下:
2025 3025 9801
0条评论