原题地址:特殊的数
问题描述
153是一个非常特殊的数,它等于它的每位数字的立方和,即153=11+55+33。编程求所有满足这种条件的三位十进制数。
输出格式
按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。
这个好像叫水仙花数。
只用算三位数的,实在想不出其他办法,那就考验下电脑 ,暴力输出。
解:
#include"iostream"
#include"cmath"
using namespace std;
int main()
{
int a1,a2,a3;//分别保存个十百位
for(int a=100;a<1000;a++)
{
a3=a/100;//百
a2=(a-a3*100)/10;//十
a1=a-a2*10-a3*100;//个
if(a1*a1*a1+a2*a2*a2+a3*a3*a3==a)cout<<a<<endl;
}
return 0;
}