當前位置:編程學習大全網 - 編程語言 - 用JS實現100到500的水仙花數 輸出

用JS實現100到500的水仙花數 輸出

原來我制作了百度百科中html+js部分的水仙花數.以下是我根據妳的題意更新部分功能.實現的是不定位數和範圍.測試成功,需要註意的是,不定位數的地方最好不要寫7以上的數,不然運行的時間妳等不起.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" <head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>無標題文檔</title>

<script type="text/javascript">

function fun(){

//取得參量位數

var valnum=parseInt(document.frm.input.value);

//求得符合參量位數的最大值和最小值

var highnum=Math.pow(10,valnum)-1;

var lownum=Math.pow(10,valnum-1);

//輸出隊列的組成部分

var output="***有個數:",res_str="";

//a為i分解為數組的下腳值,num為符合規則的水仙花的個數

var a=0,num=0;

//遍歷所有符合參量位數的數

for(i=lownum;i<=highnum;i++){

//res為水仙花數規則值,即n位的數的每位數的n次冪的和,預置為0

var res=0;

//分解出當前i的每位數並存如數組

var new_i=i.toString().split("");

for(a=0;a<=valnum-1;a++){

//求得水仙花數規則值

res=Math.pow(parseInt(new_i[a]),valnum)+res;

}

//判斷符合水仙花數的個數,如符合則將水仙花數並入輸出隊列

if(res==i){

num++;

res_str=res_str+"<br>"+res;

}

}

//輸出隊列

if(valnum<3){output="妳輸入了無效位數!";}

else{output=output+num+res_str;}

//輸出

document.getElementById("divnum").innerHTML=output;

}

function fun1(){

var valnum1=parseInt(document.frm1.input1.value);

var valnum2=parseInt(document.frm1.input2.value);

if(valnum1>valnum2) return alert("範圍錯誤");

if(valnum2<100) return alert("最大值位數小於3位,不存在水仙花數(依據水仙花規則)");

if(valnum1<100) valnum1=100;

var output="***有個數:",res_str="";

var a=0,num=0;

for(i=valnum1;i<=valnum2;i++){

var res=0;

//分解出當前i的每位數並存如數組

var new_i=i.toString().split("");

for(a=0;a<=new_i.length-1;a++){

//求得水仙花數規則值

res=Math.pow(parseInt(new_i[a]),new_i.length)+res;

}

//判斷符合水仙花數的個數,如符合則將水仙花數並入輸出隊列

if(res==i){

num++;

res_str=res_str+"<br>"+res;

}

}

output=output+num+res_str;

//輸出

document.getElementById("divnum").innerHTML=output;

}

</script>

</head>

<body><form name="frm">

<label>請輸入水仙花的位數(N>=3):</label><input type="text" name="input" value="">

<input value="運算" type="button" onclick="fun()" />

</form>

<br/>

<form name="frm1">

<label>請輸入求水仙花的範圍:</label><input type="text" name="input1" value="">-<input type="text" name="input2" value="">

<input value="運算" type="button" onclick="fun1()" />

</form>

<div id="divnum" style=" position:absolute;left:100px;width:200px;top:130px;"></div>

</body>

</html>

  • 上一篇:太原市佳信數碼信息有限公司招聘信息,太原市佳信數碼信息有限公司怎麽樣?
  • 下一篇:機器人也能夠繁殖了?“活體”機器人研制成功,它是否是生物體
  • copyright 2024編程學習大全網