水仙花數(Narcissistic number)是指一個 n 位數(n≥3),其各個位上數字的 n 次冪之和等于它本身。例如,153 是一個水仙花數,因為 1^3 + 5^3 + 3^3 = 153。
下面是一個Python程序,用來輸出所有的三位數的水仙花數:
for num in range(100, 1000):
# 將數字轉換為字符串,以便進行迭代
num_str = str(num)
# 取出個位、十位和百位上的數字
digit1 = int(num_str[0])
digit2 = int(num_str[1])
digit3 = int(num_str[2])
# 計算數字的立方和
sum_of_cubes = digit1 ** 3 + digit2 ** 3 + digit3 ** 3
# 如果立方和等于原數字,則輸出該數字為水仙花數
if sum_of_cubes == num:
print(num)
運行以上代碼,將輸出所有的三位數的水仙花數:153, 370, 371, 407。