㈠什么是自冪數?
自冪數是指一個 n 位數,它的每個位上的數字的 n 次冪之和等於它本身。(例如:當n為3時,有1^3 + 5^3 + 3^3 = 153,153即是n為3時的一個自冪數)
㈡自冪數包括?
自冪數包括:獨身數、水仙花數、四葉玫瑰數、五角星數、六合數、北斗七星數、八仙數、九九重陽數、十全十美數。
㈢各個數的取值?
n為1時,自冪數稱為獨身數。顯然,0,1,2,3,4,5,6,7,8,9都是自冪數。
n為2時,沒有自冪數。
n為3時,自冪數稱為水仙花數,有4個:153,370,371,407;
n為4時,自冪數稱為四葉玫瑰數,共有3個:1634,8208,9474;
n為5時,自冪數稱為五角星數,共有3個:54748,92727,93084;
n為6時,自冪數稱為六合數, 只有1個:548834;
n為7時,自冪數稱為北斗七星數, 共有4個:1741725,4210818,9800817,9926315;
n為8時,自冪數稱為八仙數, 共有3個:24678050,24678051,88593477;
n為9時,自冪數稱為九九重陽數,共有4個:146511208,472335975,534494836,912985153;
n為10時,自冪數稱為十全十美數,只有1個:4679307774。
總共有88個自冪數,最大的自冪數是115132219018763992565095597973971522401。
㈣JavaScript實現代碼
4.1水仙花數

4.2四葉玫瑰數
4.3五角星數
4.4六合數

4.5北斗七星數
4.6八仙數
4.7九九重陽數
4.8十全十美數
㈤代碼測試
var m=parseInt(prompt("請輸入要求自冪數的位數")); //m位自冪數 function Pow(x,n) //x的n次方 { num=1; while(n--) { num=num*x; } return num; } function dfs(deep,curNum, curSum) //DFS搜索自冪數 { if(deep>m) { if(curNum==curSum) //滿足條件自冪數輸出 { console.log(curNum); } } else { var start=(deep==1);//第一位不為0 for(var i=start;i<=9;i++) { dfs(deep+1,curNum*10+i,curSum+Pow(i,m)); } } } dfs(1,0,0);
測試:
輸入自冪數的位數為:3
以上就是有關自冪數的相關知識,希望有所幫助。