C++ :水仙花數
輸出所有的“水仙花數”,所謂的“水仙花數”是指一個三位數其各位數字的立方和等於該數本身,例如153是“水仙花數”,153 = 1的3次方 + 5的3次方 + 3的3次方。
根據“水仙花數”的定義,判斷一個數是否為“水仙花數”,最重要的是要把給出的三位數的個位、十位、百位分別拆分,並求其立方和,若與三位數相等則為“水仙花數”。
#include <iostream>
using namespace std;
int main(){
int num = 100;
do {
int a = 0;
int b = 0;
int c = 0;
//先把三位數拆分成個十百
a = num % 10;
b = num / 10 % 10;
c = num / 100;
//立方和若與三位數相等則為“水仙花數”。
if ( a*a*a + b*b*b +c*c*c == num)
{
cout << num << endl;
}
num++;
} while (num < 1000);
}