python输出所有的水仙花数
808
水仙花数是指一个三位数,它的每个位上的数字的立方和等于它本身。例如153就是一个水仙花数,因为$1^3+5^3+3^3=153$。我们可以使用一个循环遍历所有的三位数,然后判断每个数是否为水仙花数,如果是则输出。具体代码如下:
for num in range(100, 1000):
# 分解出各个位上的数字
digit1 = num // 100
digit2 = (num // 10) % 10
digit3 = num % 10
# 判断是否为水仙花数
if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3:
print(num)
代码解析:
for num in range(100, 1000)
遍历100到999这900个三位数。digit1 = num // 100
,digit2 = (num // 10) % 10
,digit3 = num % 10
将三位数分解成各个位上的数字。if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3
判断该数是否为水仙花数,如果是则输出。