水仙花数是指一个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()
函数中的参数。