题目:
美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。
一次他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说:
“我年龄的立方是个4位数。我年龄的4次方是个6位数。这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。
答案:18
解题思路:
从题意可知,年龄范围在11-31之间。用条件判断一下可以排除大部分结果,求出的几个结果笔算一下就有结果了。
#include<stdio.h>
#include<math.h>
int main()
{
int x,s1,s2;
for(x=11;x<=31;x++)
{
s1=pow(x,3);
s2=pow(x,4);
if(s1>1000&&s1<=9999&&s2>100000&&s2<=999999)
printf("%5d",x);
}
}
程序输出18 19 20 21,通过计算可知18满足条件。