如果一个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,"不是阿姆斯特朗数")
lower = int(input("最小值:")) upper = int(input("最大值:")) print("下面是你想要从{}到{}之间的阿姆斯特朗数\n".format(lower,upper)) for num in range(lower,upper+1): sum = 0 n = len(str(num)) temp = num while temp >0: digit = temp %10 # 获取个位数字 sum+= digit**n # 对计算结果进行累加 temp //= 10 if num == sum: print(num)