0


Python求三位水仙花数

Python求三位水仙花数

简介

"水仙花数"是指一个三位整数,其各位数字的3次方和等于该数本身。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬

例如:ABC是一个"3位水仙花数",则:A的3次方+B的3次方+C的3次方 = ABC。

基础掌握

Python str() 函数
https://www.runoob.com/python/python-func-str.html
str() 函数将对象转化为适于人阅读的形式。(转成字符串类型)

Python join()方法
https://www.runoob.com/python/att-string-join.html
Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。

str="-";
seq =("a","b","c");# 字符串序列printstr.join( seq );#输出 a-b-c

Python List append()方法
https://www.runoob.com/python/att-list-append.html
append() 方法用于在列表末尾添加新的对象。

aList =[123,'xyz','zara','abc'];
aList.append(2009);print"Updated List : ", aList;#Updated List :  [123, 'xyz', 'zara', 'abc', 2009]

解决问题代码

方法一:数学角度思考(可以先拷贝运行一下,便于理解)

i =100while i <1000:
    b = i //100#取百位
    s = i %100//10#取十位
    g = i %10#取个位if b **3+ s **3+ g **3== i:print(b,s,g,i)
    i = i +1

方法二:编程角度思考

s=list()for i inrange(100,1000):
    a=str(i)#将数字变成字符串使得能起遍历ifpow(eval(a[0]),3)+pow(eval(a[1]),3)+pow(eval(a[2]),3)==i:#取百十个分位
        s.append(a)#加入到列表当中print(','.join(s))#通过逗号连接符合要求的数字
标签: 字符串 列表 python

本文转载自: https://blog.csdn.net/Eric005/article/details/116005254
版权归原作者 啥都鼓捣的小yao 所有, 如有侵权,请联系我们删除。

“Python求三位水仙花数”的评论:

还没有评论