用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?
num<100 and num>999
改为用 or,怎么会有数既小于100又大于999呢。。。
if num<100 or num>999:
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!