所謂"水仙花數"是指一個三位數,其各位數字立方和等于該數本身。例如:153是一個"水仙花數",因為153=1^3 +5^3 +3^3 。判斷"水仙花數"。
這題唯一的難點就是:“如何把一個三位數的3個數字分别輸出,以算出次方之和“
num = int(input("請輸入數字:"))
i=num//100 # 153/100等于1.53,應該整除,把後面的小數去掉,這就是百位數
j=num//10%10 # 153//10等于15,再對15/10取餘即可得出十位數5
k=num%10 # 153%10取餘
if(i**3 +j**3 + k**3 == num):
print("是水仙花數")
else:
print("不是水仙花數")
答案:
153是水仙花數
370是水仙花數
371是水仙花數
407是水仙花數
輸出所有的水仙花數
for num in range(100,1000):
i=num//100
j=num//10%10
k=num%10
if(i**3 +j**3 + k**3 == num):
print(str(num) + "是水仙花數")
答案:
153是水仙花數
370是水仙花數
371是水仙花數
407是水仙花數