这个怎么修的,麻烦解答一下

 

修改后代码如下:

for num in range(1,1000):
    sum=0
    n=len(str(num))
    temp=num
    while temp>0:
        digit=temp%10
        sum+=digit**n
        temp//=10
    if num ==sum and num!=0:
        print(num,"是阿姆斯特朗数")

 

如有帮助,请采纳。点击我回答右上角【采纳】按钮。

修改错误吗,有说明哪些代码有误吗

for num in range(0,1000):
    sum = 0
    n = len(str(num))
    temp = num
    while temp>0:
        digit = temp%10   # 第一个错误,取余数是符号%
        sum += digit ** n   # 第二个错误,digit的n次方是**,*是乘法
        temp = temp//10
    if num==sum and num!=0:  # 第三个错误,逻辑判断的等于是“==”,“=”是赋值
        print(num,'是阿姆斯特朗数')

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m