温馨提示×

python怎么打印出所有的水仙花数

小樊
91
2024-07-12 04:30:31
栏目: 编程语言

水仙花数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。比如说,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。

以下是一个Python程序,可以打印出所有的水仙花数:

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)

运行这个程序会打印出所有的三位数水仙花数。如果你想打印更多位数的水仙花数,只需要修改range()函数中的参数。

0