题目转载:http://python.wzms.com/s/1/57
题目描述:
如果一个三位数等于它的每位数字的立方和,则此数称为“水仙花”数。如:
153=13+53+33,故153是水仙花数。
编写程序求[a,b](100<=a<=b<=999)以内所有的水仙花数,有多个这样的数,每行输出一个。输入文件中两个整数之间用一个逗号隔开。保证在给定范围内有水仙花数。
输入格式:
输入两个数,用逗号隔开
输出格式:
输出给定范围内的所有水仙花数,按从小到大输出,每行一个。
代码:
a, b = (input().split())
a, b = int(a), int(b)
for three_digit_number in range(a, b+1):
number_list = list(str(three_digit_number))
if int(number_list[0])**3 + int(number_list[1])**3 + int(number_list[2])**3 == three_digit_number:
print(three_digit_number)
运行结果: