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))#通过逗号连接符合要求的数字
版权归原作者 啥都鼓捣的小yao 所有, 如有侵权,请联系我们删除。