大家好,欢迎来到IT知识分享网。
水仙花数的含义
“水仙花数”是指一个三位整数,其各位数字的3次方和等于该数本身。例如:ABC是一个”3位水仙花数”,则:A的3次方+B的3次方+C的3次方 = ABC。是不是很有趣!!!
下面我们来介绍一下如何利用python来对三位数的水仙花数进行求解。
首先我们要清楚的认识到三位数有很多,我们要一一对其进行检验,因此循环是我们的首选。再者就是每个数的次方之和了,我们需要提取出每个数再进行次方和。
步骤如下:
1、使用循环来遍历每一个三位数
2、对每一个三位数提取出每个数
3、对提取出的每个数进行次方求和即可求出水仙花数
想法出来了,代码走起:
def Narcissus(): list1=[] for i in range(100,999+1): sum=str(i) A=eval(sum[0]) B=eval(sum[1]) C=eval(sum[2]) if pow(A,3)+pow(B,3)+pow(C,3)==i: list1.append(i) return list1 str1=','.join(map(str,Narcissus())) print(str1)
需要解释的一点是:由于数字无法像字符串一样可以轻松的提取出字符,因此我们需要对数据进行处理,str()函数可以把数字类型变成字符类型方便进行提取。
以上方法只是其中的一种方法,我们也可以不改变类型也可以提取出每一位数字,具体方法就是利用余数的特点。一个三位数整除100得到第一位数,随后可以利用原来的数减去第一位数乘一100,随后可以利用同样的方法取出三个数。代码可以供读者研究研究。
总结经验:不仅仅是三位数,四位、五位、六位等等,都可以运用此方法进行推算。不仅仅是水仙花数,许多有体征的数我们其实可以利用python的一些简单程序来解决。灵活的运用python会使生活变得更加简单和有趣。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/86033.html