. 找出所有的水仙花数。水仙花数是指一个3位数,每位上的数字的3次幂之和等于它本身(例如:13 + 53+ 3**3 = 153)。
def main():
for num in range(100, 1000):
low = num % 10
mid = num // 10 % 10
high = num // 100
if num == low ** 3 + mid ** 3 + high ** 3:
print(num)
if __name__ == '__main__':
main()
def find_narcissistic_numbers():
narcissistic_numbers = []
for number in range(100, 1000):
# 将数字拆分为各个位数
digit1 = number // 100
digit2 = (number // 10) % 10
digit3 = number % 10
# 计算每位数字的立方和
sum_of_cubes = digit1 ** 3 + digit2 ** 3 + digit3 ** 3
# 检查是否为水仙花数
if sum_of_cubes == number:
narcissistic_numbers.append(number)
return narcissistic_numbers
# 调用函数并打印结果
result = find_narcissistic_numbers()
print(result)
运行此程序将输出所有的水仙花数:
[153, 370, 371, 407]
这些都是满足水仙花数定义的三位数。