習題4 6 水仙花數 (20 分)

2021-09-11 19:39:51 字數 1082 閱讀 4980

水仙花數是指乙個n位正整數(n≥3),它的每個位上的數字的n次冪之和等於它本身。例如:153=1^​3 +5^​3+ 3^3。 本題要求編寫程式,計算所有n位水仙花數。

輸入格式:

輸入在一行中給出乙個正整數n(3≤n≤7)。

輸出格式:

按遞增順序輸出所有n位水仙花數,每個數字佔一行。

輸入樣例:

輸出樣例:

153

370371

407

一開始想的是用pow函式:

#include

#include

#include

double

decompose

(int a,

double n)

;int main ()}

system

("pause");

return0;

}double

decompose

(int a,

double n)

return sum;

}

如果這樣的話,在第五個測試點,也就是當n等於7的時候,會超時。超時是因為pow函式採用的是浮點運算,運算起來很慢。

而要解決的話可以自己寫乙個pow函式,使它不再進行浮點運算。

#include

#include

intdecompose

(int a,

int n)

;int

mypow

(int a,

int b)

;int main ()}

system

("pause");

return0;

}int

decompose

(int a,

int n)

return sum;

}int

mypow

(int a,

int b)

return sum;

}

習題4 6 水仙花數 (20 分

習題4 6 水仙花數 20 分 水仙花數是指乙個n位正整數 n 3 它的每個位上的數字的n次冪之和等於它本身。例如 153 1 3 5 3 3 3 本題要求編寫程式,計算所有n位水仙花數。輸入格式 輸入在一行中給出乙個正整數n 3 n 7 輸出格式 按遞增順序輸出所有n位水仙花數,每個數字佔一行。輸...

習題4 6 水仙花數 20分

本題要求編寫程式,計算所有n位水仙花數。輸入格式 輸入在一行中給出乙個正整數n 3 n 7 輸出格式 按遞增順序輸出所有n位水仙花數,每個數字佔一行。輸入樣例 輸出樣例 153 370371 407 如下 include include include static int p 10 定義乙個靜態整...

習題4 6 水仙花數

水仙花數是指乙個n位正整數 n 3 它的每個位上的數字的n次冪之和等於它本身。例如 153 153 13 5 3 3 3 本題要求編寫程式,計算所有n位水仙花數。輸入格式 輸入在一行中給出乙個正整數n 3 n 7 輸出格式 按遞增順序輸出所有n位水仙花數,每個數字佔一行。3153 370371 40...