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)

代码解析:

  1. for num in range(100, 1000) 遍历100到999这900个三位数。
  2. digit1 = num // 100digit2 = (num // 10) % 10digit3 = num % 10 将三位数分解成各个位上的数字。
  3. if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3 判断该数是否为水仙花数,如果是则输出。

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部