某位小朋友可能在刷題的原因毯炮,突然問我,怎么求出某個范圍內的水仙花數(shù)耸黑,比如1000以內的水仙花數(shù)有幾個桃煎,又分別是什么數(shù)呢?
要解開類似這種題大刊,當然要先知道"水仙花數(shù)"的定義是什么为迈,就好像你要找出素數(shù)就要先知道素數(shù)的定義,"水仙花數(shù)"的定義:假設有一個3位數(shù),該數(shù)是407葫辐,求出該數(shù)的每一位數(shù)的3次方然后再相加搜锰,相加后的值如果恰好等于該數(shù)的話,那么該數(shù)就是"水仙花"數(shù)另患,即407=4*4*4 + 0*0*0 + 7*7*7纽乱,依其原理,用Python能很快的實現(xiàn)出來:
1昆箕,1000以內鸦列,就從999開始,一直倒序到000鹏倘,即999~000薯嗤。
2,由于是3位數(shù)纤泵,那就分別倒序骆姐,使用3個逆循環(huán)實現(xiàn),取值分別是i, j, k捏题,即嵌套3層的for循環(huán)玻褪。
3,直接在最內層的循環(huán)內實現(xiàn)邏輯并循環(huán)判斷任一數(shù)是否符合式子即可公荧。
以下是"水仙花數(shù)"的代碼:
result: