修改后代码如下:
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