开发者社区> 问答> 正文

Python 阿姆斯特朗数

Python 阿姆斯特朗数

展开
收起
游客ejnn55cgkof5g 2020-02-14 17:14:19 980 0
1 条回答
写回答
取消 提交回答
  • # Filename : test.py
    # author by : www.runoob.com
     
    # Python 检测用户输入的数字是否为阿姆斯特朗数
     
    # 获取用户输入的数字
    num = int(input("请输入一个数字: "))
     
    # 初始化变量 sum
    sum = 0
    # 指数
    n = len(str(num))
     
    # 检测
    temp = num
    while temp > 0:
       digit = temp % 10
       sum += digit ** n
       temp //= 10
     
    # 输出结果
    if num == sum:
       print(num,"是阿姆斯特朗数")
    else:
       print(num,"不是阿姆斯特朗数")
    执行以上代码输出结果为:
    
    $ python3 test.py 
    请输入一个数字: 345
    345 不是阿姆斯特朗数
    
    $ python3 test.py 
    请输入一个数字: 153
    153 是阿姆斯特朗数
    
    $ python3 test.py 
    请输入一个数字: 1634
    1634 是阿姆斯特朗数
    获取指定期间内的阿姆斯特朗数
    实例(Python 3.0+)
    # Filename :test.py
    # author by : www.runoob.com
     
    # 获取用户输入数字
    lower = int(input("最小值: "))
    upper = int(input("最大值: "))
     
    for num in range(lower,upper + 1):
       # 初始化 sum
       sum = 0
       # 指数
       n = len(str(num))
     
       # 检测
       temp = num
       while temp > 0:
           digit = temp % 10
           sum += digit ** n
           temp //= 10
     
       if num == sum:
           print(num)
    执行以上代码输出结果为:
    
    最小值: 1
    最大值: 10000
    1
    2
    3
    4
    5
    6
    7
    8
    9
    153
    370
    371
    407
    1634
    8208
    9474
    2020-02-14 17:15:25
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载