基础练习 特殊的数字
时间限制:1.0s 内存限制:512.0MB
问题描述
153是一个非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。编程求所有满足这种条件的三位十进制数。
输出格式
按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。
#include<cstdio>
#include<cmath>
using namespace std;
bool judge(int i)
{
int num=i,sum=0;
int a[10],j=-1;
while(i!=0)
{
a[++j]=i%10;
i/=10;
}
for(int k=0;k<=j;k++)
sum+=int(pow(a[k],3));//a[k]*a[k]*a[k]
if(sum==num)
return true;
else
return false;
}
int main()
{
for(int i=100;i<=999;i++)
{
if(judge(i))
printf("%d\n",i);
}
return 0;
}