python怎么输出a的b次方_用Python输出自幂数

  • Post author:
  • Post category:python


自幂数是什么

自幂数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。例如:当n为3时,153即是n为3时的一个自幂数。

自幂数包括独身数、水仙花数、四叶玫瑰数、五角星数、六合数、北斗七星数、八仙数、九九重阳数、十全十美数等。

从水仙花数说起

今天的计导课上,老师布置了一项作业:用Python输出所有的水仙花数。水仙花数即为当n=3时的自幂数。用Python 3.6编写代码如下:

for num in range(100,1000):

i = num % 10 #个位

k = int(num / 100) #百位

j = int((num – k * 100) / 10) #十位

sum = i ** 3 + j ** 3 + k ** 3

if(num == sum):

print(‘%d’ %num)

它的思路是将三位数的个位、十位、百位分解,然后分别用个位、十位、百位的三次方作和,判断所求的和与原来的三位数是否相等,如果相等即为水仙花数。

另一种解法如下所示:

for i in range(100,1000):

num = str(i)

sum = 0

for j in num:

sum = sum + int(j)**3

if(sum == i):

print(i)

从水仙花数到其他自幂数

通过上面所说的思路,我们可以用Python写出四叶玫瑰数、五角星数等其他自幂数。

下面是用Python



版权声明:本文为weixin_34811747原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。