Python 阿姆斯特朗数

如果一个 n 位正整数等于其各位数字的 n 次方之和,则称该数为阿姆斯特朗数。 例如 1^3 + 5^3 + 3^3 = 153。(1000 以内的阿姆斯特朗数: 1, 2, 3, 4, 5, 6, 7, 8, 9, 153, 370, 371, 407。)

num=int(input("请输入一个数字"))
sum=0
n=len(str(num))
temp=num
while temp>0:
    digit=temp%10
    sum+=digit**n
    temp//=10
if num==sum:
    print(num,"是阿姆斯特朗数")
else:
    print(num,"不是阿姆斯特朗数")
# 从个位依次往前提取出来,
# 这里的技巧之处在于使用了个while循环语句来实现取余以及取商的步骤,
# 从而能够将每个位子上的数字都能提取出来。

主要学会此种题的解答模板与思路。

你可能感兴趣的:(Python精品习题库,python,开发语言)