Python習題集(四)


每天一習題,提升Python不是問題!!有更簡潔的寫法請評論告知我!

https://www.cnblogs.com/poloyy/category/1676599.html

 

題目

如果一個 3 位數等於其各位數字的立方和,則稱這個數為水仙花數。  
例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一個水仙花數
那么問題來了,求1000以內的水仙花數(3位數)

 

解題思路

  1. int轉字符串序列,獲取到每一位數
  2. 調用math.pow函數求立方和
  3. 三個數字立方和相加

 

答案

lists = []
for i in range(101, 1000):
    i = str(i)
    i1, i2, i3 = int(i[0]), int(i[1]), int(i[2])
    if int(i) == int(math.pow(i1, 3) + math.pow(i2, 3) + math.pow(i3, 3)):
        lists.append(i)

print(lists)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM