Armstrong数会先输出两次错误的结果,最后才输出正确的结果(Python)
创始人
2024-09-14 00:30:34
0

当计算Armstrong数时,我们需要使用一个while循环,以将每个数字的每个digit的立方相加。然而,因为我们需要使用一个for循环来确定数字中的每个digit,所以我们需要把num转换为字符串。这个字符串是可迭代的对象,我们可以使用它来获得每个digit。但是,我们需要把每个字符转换为数字,才能计算其立方。这里的问题是,我们没有把字符转换为数字而直接进行了计算,这就导致了错误的输出。我们可以在代码中添加一个int()函数来解决这个问题。下面是修正后的代码示例:

def is_armstrong(num):
    n = len(str(num))
    sum = 0
    temp = num
    while temp > 0:
        digit = int(temp % 10)
        sum += digit ** n
        temp //= 10

    if num == sum:
        return True
    else:
        return False

print(is_armstrong(153)) # 输出 True
print(is_armstrong(370)) # 输出 True
print(is_armstrong(371)) # 输出 True
print(is_armstrong(9474)) # 输出 True
print(is_armstrong(9475)) # 输出 False

相关内容

热门资讯

五分钟经验!wepoker黑侠... 五分钟经验!wepoker黑侠破解(透视)好像有辅助辅助(哔哩哔哩)1、下载好wepoker黑侠破解...
六分钟方式!wepoker透视... 六分钟方式!wepoker透视版下载(透视)好像真的有辅助工具(哔哩哔哩)wepoker透视版下载辅...
8分钟操作!pokerworl... 8分钟操作!pokerworld修改器(透视)竟然真的是有辅助辅助(哔哩哔哩)pokerworld修...
第7分钟办法!wepoker有... 第7分钟办法!wepoker有什么规律(透视)一直存在有辅助下载(哔哩哔哩);1、wepoker有什...
8分钟讲义!wepoker怎么... 8分钟讲义!wepoker怎么挂飞机(透视)果然真的有辅助脚本(哔哩哔哩)1、下载好wepoker怎...
第五分钟步骤!wepoker辅... 第五分钟步骤!wepoker辅助器是真的吗(透视)一贯有辅助透视(哔哩哔哩)1、完成wepoker辅...
第7分钟操作!约局吧德州真的存... 第7分钟操作!约局吧德州真的存在透视吗(透视)确实是有辅助安装(哔哩哔哩)1、第7分钟操作!约局吧德...
第1分钟绝活!wpk私人局有透... 第1分钟绝活!wpk私人局有透视吗(透视)其实是真的有辅助插件(哔哩哔哩)在进入wpk私人局有透视吗...
四分钟操作!pokemmo免费... 四分钟操作!pokemmo免费脚本(透视)切实存在有辅助下载(哔哩哔哩)1)pokemmo免费脚本免...
第十分钟学习!wepoker有... 第十分钟学习!wepoker有透视功能吗(透视)原来是有辅助脚本(哔哩哔哩)1、用户打开应用后不用登...