问题描述
153是非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。编程求所有满足这种条件的三位十进制数。
输出格式
按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。
#include<stdio.h>
#include<string.h>
int main()
{
int i,j,len;
char buf[7];
for(i=100;i<1000;i++)
{
sprintf(buf,"%d",i);//技巧,避免数据过大时候运算溢出
len=0;
for(j=0;buf[j]!='\0';j++)
{
len+=(buf[j]-'0')*(buf[j]-'0')*(buf[j]-'0');
}
if(len==i)
printf("%d\n",i);
}
return 0;
}