第4章 16 水仙花數(20 分)

2022-07-03 04:33:08 字數 1020 閱讀 5578

水仙花數是指乙個n位正整數(n≥3),它的每個位上的數字的n次冪之和等於它本身。 例如:153=1×1×1+5×5×5+3×3×3。

本題要求編寫程式,計算所有n位水仙花數。

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

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

在這裡給出一組輸入。例如:

3

在這裡給出相應的輸出。例如:

153

370371

407第一版

1

#水仙花數2#

author: cnrick3#

time : 2020-3-29

4import

math

5 digit =int(input())

6 left,right= int(math.pow(10,digit-1)),int(math.pow(10,digit)) #

左區間和右區間(左閉右開)

7for num in

range(left,right):

8 x =num

9 resultofsum =0

10while x >0:

11 resultofsum = resultofsum + pow(x%10,digit)

12 x = x //10

13if resultofsum ==num:

14print

(num)

15

第二版

#

水仙花數

#author: cnrick

#time : 2020-3-30

n =int(input())

for a in range(10**(n-1),10**n):

if a == sum([int(i)**n for i in

str(a)]):

print(a)

4 3 4 水仙花數 20分

水仙花數是指乙個三位正整數,它的每個位上的數字的3 次冪之和等於它本身。例如 153 13 53 53,則153 是水仙花數。本題要求編寫乙個函式判斷給定整數是否是水仙花數。函式介面定義 bool narcissistic int number number 是使用者傳入的引數。裁判測試程式樣例 i...

7 93 水仙花數 20分

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

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

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