水仙花數(shù)是指一個n位數(shù),它的每個位上的數(shù)字的n次冪之和等于它本身。比如說,153是一個水仙花數(shù),因?yàn)?^3 + 5^3 + 3^3 = 153。
以下是一個Python程序,可以打印出所有的水仙花數(shù):
def is_armstrong(num):
num_str = str(num)
n = len(num_str)
total = 0
for digit in num_str:
total += int(digit) ** n
return total == num
for i in range(100, 1000):
if is_armstrong(i):
print(i)
運(yùn)行這個程序會打印出所有的三位數(shù)水仙花數(shù)。如果你想打印更多位數(shù)的水仙花數(shù),只需要修改range()
函數(shù)中的參數(shù)。