描述
在控制台输出所有的“水仙花数”。
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
举例:153就是一个水仙花数。
153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153
输入描述:
无
输出描述:
输出所有的“水仙花数”,每个“水仙花数”占一行,格式如下:
xxx
yyy
zzz
分析:
求解关键是----百位数除100取整,该数减去百位后,对十位数除10取整,个位数模10运算,三个位置便可全部求出。
代码:
#include <iostream>
using namespace std;
int main() {
for (int i = 100; i <= 999; i++) {
int a = i / 100;
int b = (i - a * 100) / 10;
int c = (i - a * 100) % 10 ;
if (i == (a * a * a + b * b * b + c * c * c)) {
cout << i << endl;
}
}
return 0;
}