do- while方式写输出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如,153是一水仙花数,因为153=1³+5³+3³。
问题描述:
输出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如,153是一水仙花数,因为153=1³+5³+3³。用while语句咋写。
答
#include<iostream>
using namespace std;
int main() {
//1.打印所有三位数
int num = 100;
do {
//2.判断水仙花数
int a = 0, b = 0, c = 0;//代表个位,十位百位
a = num % 10;//获取个位
b = num / 10 % 10;//获取十位
c = num / 100 % 10;//获取百位
if (a* a* a + b * b * b + c * c * c == num) {
cout << num << endl;
}
num++;
} while (num < 1000);
system("pause");
return 0;
}