致读者:本人是一名通信专业学生,仅学了4天Python ,难免有些地方写的很笨拙。
写博客一方面是为了记录自己的学习过程中遇到的问题和思考,一方面是希望能够帮助到很多和自己一样处于困惑的读者。
水平有限,博客中难免会有一些错误,有纰漏之处恳请各位大佬不吝赐教!
越努力,越幸运
水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。 例如:153=1×1×1+5×5×5+3×3×3。
本题要求编写程序,计算所有N位水仙花数。
输入格式:
输入在一行中给出一个正整数N(3≤N≤5)
输出格式:
按递增顺序输出所有N位水仙花数,每个数字占一行。
输入样例:
在这里给出一组输入。例如:
3
输出样例:
在这里给出相应的输出。例如:
153
370
371
407
解法1
n = int(input())
for i in range(pow(10, n-1), pow(10, n)):
tmp = i
sum = 0
while tmp != 0:
sum += pow(tmp % 10, n)
tmp //= 10
if sum == i:
print(i)