如果一个三位数的各位数字的立方和等于该数本身,则称该数为“水仙花数”。例如:153 :1的三次方+5的三次方+3的三次方。请编程找出并打印所有的“水仙花数”
想法:
做一个从
100
到
999
的循环,对每个数进行 “
检查
”
:依次
分解出每个数的百位、十位和个位数字
,如果满足条件则打印输出
#include <iostream>
using namespace std;
int main() {
int n = 100;
while (n < 1000) {
int a = n / 100; //百位
int b = n / 10 % 10; //十位
int c = n % 10; //个位
if (a * a * a + b * b * b + c * c * c == n) {
cout << n << endl;
}
n++;
}
return 0;
}