美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。
一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说:
“我年龄的立方是个4位数。我年龄的4次方是个6位数。这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。”请你推算一下,他当时到底有多少岁。
#include<stdio.h>
void main()
{
int i,j,k,num;
int a[20];
for(i=18;i<=21;i++)
{
num=i*i*i*1000000+i*i*i*i;
for(j=0;j<=9;j++)
for(k=0;k<=9;k++)
{
a[k]=num%10;
num=num/10;
if(j==a[k])
break;
}
printf("His age is:%d.\n",&i);
}
return 0;
}
我又改了一下程序,但是还是得不到答案,可以帮我看一下吗?
#include
int main(){
int i,j,t,a[10];
long long num;
for(i=18;i0){
if(a[num%10]){
t=0;break;}
else a[num%10]=1;
num/=10;}
if(t)printf("His age is:%d.\n",i);}
return 0;}
/*MODE BY TXJ*/