python编程题:打印出所有 100 到 499 的 水仙花数 (水仙花数是指一个三位数,其各位数字立方和等于该数本身)。换句话说,一个三位数abc是水仙花数,如果满足以下等式:
其中,a、b、c分别为该三位数的百位、十位和个位数字。
Python 程序:
# 水仙花数是一个三位数,它的每个位上的数字的立方和等于它本身
# 初始化一个空列表,用于存储水仙花数
armstrong_numbers = []
# 遍历 100 到 499 之间的每个数字
for number in range(100, 500):
# 将数字分解成单独的数字
digits = [int(digit) for digit in str(number)]
# 计算各个位数的立方和
sum_of_cubes = sum(digit ** 3 for digit in digits)
# 如果立方和等于原始数字,则该数字是水仙花数
if sum_of_cubes == number:
armstrong_numbers.append(number)
# 打印出所有找到的水仙花数
print("100到499之间的水仙花数有:", armstrong_numbers)
运行结果: