[Python3 練習] 004 水仙花數
阿新 • • 發佈:2019-02-05
程序 int form 自身 str 等於 [1] pre 所有
題目:水仙花數
(1) 描述
- 水仙花數各位的數字的立方之和等於自身
- 如 153 為水仙花數,因為 153 = 1^3 + 5^3 + 3^3
(2) 要求
- 找到所有的三位數的水仙花數
(3) 程序
# 解法1
for i in range(100, 1000):
bai = i//100
shi = i%100//10
ge = i%10
if (bai**3 + shi**3 + ge**3) == i:
print("{0} is narcissistic number.".format(i))
print("Over!")
# 解法2 for i in range(100, 1000): temp = list(str(i)) a = int(temp[0]) b = int(temp[1]) c = int(temp[2]) if a**3 + b**3 + c**3 == i: print("{0} is narcissistic number.".format(i)) print("Over!")
(4) 小結
- 從
if a**3 + b**3 + c**3 == i:
可知“判斷”的優先級較低,但加個括號更清晰 - 題外話
- 三位數的水仙花數有 4 個,分別是 153、370、371、407
- 水仙花數還叫“自戀數”
[Python3 練習] 004 水仙花數