def demo():
創(chuàng)新互聯(lián)專注于華鎣企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城系統(tǒng)網(wǎng)站開發(fā)。華鎣網(wǎng)站建設(shè)公司,為華鎣等地區(qū)提供建站服務(wù)。全流程按需制作網(wǎng)站,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
temp = []
for i in range(100, 1000):
? a = i // 100 # 百位
? b = i // 10 % 10 # 十位
? c = i % 10 # 個位
? if a ** 3 + b ** 3 + c ** 3 == i:
? ? ? temp.append(str(i))
return ",".join(temp)
print("1000以內(nèi)的水仙花數(shù)有:{}".format(demo()))
用C語言實現(xiàn)水仙花數(shù):
#include stdio.h
#include stdlib.h
int main()
{
int i,j,k,n;
printf("'water flower'number is:");
for(n=100;n1000;n++)
{
? i=n/100;/*分解出百位*/
? j=n/10%10;/*分解出十位*/
? k=n%10;/*分解出個位*/
? if(n==i*i*i+j*j*j+k*k*k)
? {
? ? ? printf("%-5d",n);
? }
}
printf("\n");
return 0;
}
答: 對于這題,首先要明白水仙花數(shù)的概念,它首先是一個三位數(shù),其次個位、十位和百位的三次冪相加之和等于它本身。因此根據(jù)這個思路編寫以下代碼。
對應(yīng)的運行結(jié)果如下所示。注意水仙花數(shù)只有4個。
答: 首先要明白水仙花數(shù)的定義,它是指一個三位數(shù),它的每個位上的數(shù)字的三次冪之和等于它本身。所以問題就轉(zhuǎn)化為我們?nèi)绾螌⑷粩?shù)的個位、十位和百位都表示出來。然后再遍歷100~999的每一個數(shù)字去判斷其是否為水仙花數(shù)。具體代碼如下所示。
最終的運行結(jié)果如下,水仙花數(shù)總共有4個,具體如圖片所示。