python基礎練習題(題目 打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等於該數本身)


day8

---------------------------------------------------------------

實例013:所有水仙花數

題目 打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等於該數本身。例如:153是一個"水仙花數",因為153=1的三次方+5的三次方+3的三次方。

分析了下,問題不大,偷個懶導入math包:

 1 import math
 2 
 3 floor = []
 4 for i in range(100,1000):
 5     list = str(i)
 6     sum = 0
 7     for j in list:
 8         sum += math.pow(int(j),3)
 9     if sum == i:
10         floor.append(i)
11 print(floor)

來看下標准答案:

1 for i in range(100,1000):
2     s=str(i)
3     one=int(s[-1])
4     ten=int(s[-2])
5     hun=int(s[-3])
6     if i == one**3+ten**3+hun**3:
7         print(i)

用時間time.perf_countter()多次嘗試,發現兩種方法運行時間差別不大,但第二種明顯可讀性更強一點。

 


免責聲明!

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



猜您在找 打印出所有的 "水仙花數 ",所謂 "水仙花數 "是指一個三位數, 其各位數字立方和等於該數本身。 打印出100~1000范圍內的所有 “水仙花數”,所謂“水仙花數”是指一個三位數, 其各位數字立方和等於該數本身。 打印出100到999的水仙花數 所謂"水仙花數"是指一個三位數,其各位數字立方和等於該數本身。 打印出所有的“水仙花數”,所謂“水仙花數”是指一個三位數,其各位數字立方和等於該數本身。例如: 153是一個“水仙花數”,因為153=1的三 次方+5的三次方+3的三次方。 打印出所有的 "水仙花數 ",所謂 "水仙花數 "是指一個三位數 其各位數字立方和等於該數本身。 例如:153是一個 "水仙花數 " 因為153=1*1*1+5*5*5+3*3*3 打印出所有的 "水仙花數 ",所謂 "水仙花數 "是指一個三位數,其各位數字立方和等於該數本身。(分別利用while循環和for循環) 打印出所有"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等於該本身。 例如:153是一個水仙花數,因為153=1^3+5^3+3^3。 輸出所有的水仙花數,所謂水仙花數是指一個3位數,其各位數字立方和等於該數本身。例如,153是水仙花數,因為153=1*+5*+3 輸出所有的“水仙花數”,所謂“水仙花數”是指一個3位數,其各位數字立方和等於該數本身。例如,153是水仙花數,因為153=1*+5*+3 輸出所有的“水仙花數”,所謂“水仙花數”是指一個3位數,其各位數字立方和等於該數本身。例如,153是水仙花數,因為153=1*+5*+3
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM