水仙花数既是各位数字立方和等于其本身的三位数,虽然用数学方程可以求解,但过程极其复杂。不如用
c++做一个for循环程序,用枚举的方法求出所有的水仙花数:
#include
<
iostream
>
using namespace std;
int main() ... {
for(int fir=1;fir<10;fir++)...{
for(int sec=0;sec<10;sec++)...{
for(int thi=0;thi<10;thi++)...{
if(fir*fir*fir+sec*sec*sec+thi*thi*thi==fir*100+sec*10+thi)...{
cout<<fir*100+sec*10+thi<<endl;
}
}
}
}
}
using namespace std;
int main() ... {
for(int fir=1;fir<10;fir++)...{
for(int sec=0;sec<10;sec++)...{
for(int thi=0;thi<10;thi++)...{
if(fir*fir*fir+sec*sec*sec+thi*thi*thi==fir*100+sec*10+thi)...{
cout<<fir*100+sec*10+thi<<endl;
}
}
}
}
}
相信各位大侠一定有更好的算法,希望能写下自己的见解!