水仙花数(Python123)

水仙花数

描述

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 n位数(n≥3 且 n<6),它的每个位上的数字的 n 次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153,此处'^'表示幂运算)。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬

编程寻找并输出n位的水仙花数,n由用户输入,每行输出一个数字。

输入格式

输入一个介于3到5之间的正整数(包括3和5)

输出格式

输出n位的水仙花数,每行一个数

代码

N = eval(input())
for i in range(10 ** (N - 1), 10 ** N):  # 循环范围
    s = 0  # 每次重置和为0
    for j in range(len(str(i))):  # 通过将数字i变成字符串,通过字符串长度来遍历字符串
        s += int(str(i)[j]) ** N  # 将字符串的每个提出来转换为整型然后进行N次方
    if s == i:  # 如果s等于它本身,就输出水仙花数
        print(i)
上一篇:Python123第八章答案


下一篇:求e的近似值(Python123)