打印出100-1000“水仙花數“
阿新 • • 發佈:2021-01-07
打印出100-1000"水仙花數"
問題描述
打印出所有"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等於該本身。
列印100~1000範圍內的水仙花數
例如:153是一個水仙花數,因為153 = 1 ^ 3 + 5 ^ 3 + 3 ^ 3
輸出:
153
370
371
407
程式碼
#include<stdio.h>
#include<math.h>
//函式:求num各個位數的立方和
int sum_num(const int num)
{
int number = num;
int sum = 0;
while (number)
{
sum = sum + pow(number % 10, 3);
number = number / 10;
}
return sum;
}
int main()
{
int i = 0;
printf("水仙花數是:\n");
for (i = 100; i < 1001; i++)
{
if (i == sum_num(i))
{
printf("%d\n",i);
}
}
return 0;
}