用Python 编写一个程序,接受用户输入一个数,判断是否为水仙花数。 所谓"水仙花数"是指一

用Python
 编写一个程序,接受用户输入一个数,判断是否为水仙花数。

 所谓

问题描述:

用Python 编写一个程序,接受用户输入一个数,判断是否为水仙花数。 所谓"水仙花数"是指一个三位正整数,其各位数字立方和等于该本身。 例如:153是一个水仙花数,因为153=1^3+5^3+3^3。 若用户输入的不符合要求,则输出 input error! 测试用例: 输入:153       输出:OK 输入:123       输出:Fail 输入:12.3      输出:input error!

try:
    text = input("Please enter a 3-digit integer: ")
    number = int(text)
    if number >=100 and number <= 999:
        ones = number % 10
        tens = int(number / 10) % 10
        hundreds = int(number / 100)
        sum = ones * ones * ones + tens * tens * tens + hundreds * hundreds * hundreds
        if sum == number:
            print("Success")
        else:
            print("Fail")
    else:
        print("Fail")
except:
    print("input error!")

# Output
Please enter a 3-digit integer: 153
Success

Please enter a 3-digit integer: 407
Success

Please enter a 3-digit interger: 123
Fail

Please enter a 3-digit integer: 10.4
input error!