小演算法 水仙花數

2022-07-16 12:21:09 字數 1045 閱讀 1174

水仙花數是指乙個 n 位數 ( n≥3 ),它的每個位上的數字的 n 次冪之和等於它本身。(例如:1^3 + 5^3 + 3^3 = 153)

初步**:

int nmax = 9999999;

int nresult[9999];

int ncount = 0;

for( int i = 0; i < nmax; i++ )

}else if( i < 100 )

}else if( i < 1000 )

}else if( i < 10000 )

}else if( i < 100000 )

}else if( i < 1000000 )

}else if( i < 10000000 )

}} cstring str;

for( int j = 0; j < ncount; j++ )

afxmessagebox( str );

}

顯然,上面的**略顯蠢笨,就像笨勤的郭靖,但卻很認真。當然,如果要快速求出5位數以內的所有水仙花數,上面上家是最簡單也是最快的。

long

n;long

p;long

c,a,j,s[

30],i,q;p=

0;a=

10;scanf("%d

",&n);q=

n;

c = n; //jqb add

//計算出位數

for(i=1

;c>10;

++i)

printf(

"i=%d,a=%d \n

",i,a);

//得到每一位數,並依次放入陣列中

for(j=1

;a>=10;

++j)

//計算n位數的每一位的n次方的和

for(j=1

;j<=

i ;j

++)

if(p

==q)

else

趣味演算法 水仙花數

趣味演算法 水仙花數 乙個n位正整數 n 3 它的每個位上得數字的n次冪之和等於它本身。1 計算當前正整數的位數 2 計算每個位數上n次冪的和 3 判斷是否為水仙花數。include include include 0 the number is not narcissus number 1 the...

求水仙花 ghpython 水仙花數02

今天咱們繼續來看看老潘微博裡的乙個python小案例,求水仙花數,這個小案例在前兩天已經分享了,今天分享另一種方法,常言道只要思想不滑坡,方法總比困難多,而且今天的方法個人覺得更pythonic一點。水仙花數 四葉玫瑰數 五角星數 由於2位數的自冪數不存在,這裡直接從100遍歷到100000 for...

水仙花數題解

水仙花數 3位數,其各位數字立方和為該數本身.include stdio.h void main int i,j,k,n 定義n的個位數為k,十位為j,百位為i printf narcissus numbers are for n 100 n 1000 n 使n從100 999迴圈 i n 100 ...