m0_70910030 2022-10-21 13:24 采纳率: 93.7%
浏览 58
已结题

python 判断水仙花数

用python判断输入的数是否是水仙花数:
如果输入小于100或者大于999的数
则输出FALSE
如果输入一个三位数
则判断这个数是否为水仙花数
如果是,则输出TRUE
如果不是,则输出FALSE

num=int(input())
if num<100 and num>999:
    print("False")
else:
    a=num%10
    a=int(a)
    b=num//10%10
    b=int(b)
    c=num//100
    c=int(c)
    if num==a**3+b**3+c**3:
        print(True)
    else:
        print(False)

以上代码为什么运行错误?
输入1时,仍然输出TRUE?

  • 写回答

4条回答 默认 最新

  • [小G] 2022-10-21 13:29
    关注

    num<100 and num>999改为用 or,怎么会有数既小于100又大于999呢。。。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 10月29日
  • 已采纳回答 10月21日
  • 修改了问题 10月21日
  • 修改了问题 10月21日
  • 展开全部