m0_64589193 2022-05-03 10:27 采纳率: 100%
浏览 33
已结题

有点难,有人提供一下思路吗?

输入一组三位正整数,输入-1表示输入结束,输入的数据如果是水仙花数, 就追加到列表sxh_list中, 最后输出这组数中水仙花数和它们的个数以及它们的和。

水仙花数是这样一种数:它是三位正整数,它每个数位上的数的立方和等于它本身。

例如:153=1³+5³+3³,所以153是一个水仙花数。

  • 写回答

1条回答 默认 最新

  • bj_0163_bj 2022-05-03 11:04
    关注
    
    sxh_list=[]
    while 1:
        n = int(input("请输入一个三位数:"))
        if n==-1:
            break
        g = n % 10
        s = n // 10 % 10
        b = n // 100
        if pow(g,3) + pow(s,3) + pow(b,3)==n:
            sxh_list.append(n)
    
    print("水仙花数:{},个数:{},和:{}".format(sxh_list,len(sxh_list),sum(sxh_list)))
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月11日
  • 已采纳回答 5月3日
  • 创建了问题 5月3日