2016-02-02 27 views
-1

我需要查找一系列no的最大值,最小值,和值,平均值和反轉順序。 創建一個網頁,它將顯示一系列編號的輸出(最大值,最小值,和值,平均值和倒序)。該頁面應包含一個表單,其中輸入字段將出現一系列的no。將在由昏迷分開的領域提供投入。該計劃將繼續進行計算,因爲我繼續提供一系列不。 樣品:12,12,22,9,1,20 最大:22 最小:1 總:76 平均:12.66 逆序:數查找一系列no的最大值,最小值,和值,平均值和相反順序

輸入系列20,1,9, 22,12,12

代碼我嘗試:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset=utf-8 /> 
<title> Series Finder </title> 
</head> 
<body> 

<table width="50%" border="0" align="center"> 
    <tr> 
    <td width="13%">Input Series of Number :</td> 
    <td width="29%"><input name="box1" type="text" id="box1" /></td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    <td></td> 
    </tr> 
    <tr> 
    <td>Max :</td> 
    <td><div id="result"> </div></td> 
    </tr> 
    <tr> 
    <td>Min :</td> 
    <td><div id="result"> </div></td> 
    </tr> 
    <tr> 
    <td>Sum :</td> 
    <td><div id="result"> </div></td> 
    </tr> 
    <tr> 
    <td>Average :</td> 
    <td><div id="result"> </div></td> 
    </tr> 
    <tr> 
    <td>Reverse Order :</td> 
    <td><div id="result"> </div></td> 
    </tr> 
    <tr> 
    <td>&nbsp;</td> 
    <td></td> 
    </tr> 
</table> 

</body> 
</html> 

<script> 

    function calculate() { 
     var myBox1 = document.getElementById('box1').value; 
     var res = Math.max([myBox1, myBox1]); 

     alert(res); 


     result.innerHTML = myResult; 


    } 
</script> 
+1

所以,你真的沒有嘗試任何事情,並尋找一些填鴨式的解決方案 – Idos

回答

1

function calculate() { 
 
    var values = document.getElementById('box1').value.split(/,/g); 
 
    var sum = values.reduce(function(a, b) { return parseInt(a) + parseInt(b); }); 
 
    document.querySelector('#max').innerHTML = values.max(); 
 
    document.querySelector('#min').innerHTML = values.min(); 
 
    document.querySelector('#sum').innerHTML = sum; 
 
    document.querySelector('#avg').innerHTML = sum/values.length; 
 
    document.querySelector('#reverse').innerHTML = values.reverse().join(','); 
 
} 
 

 
Array.prototype.max = function() { 
 
    return Math.max.apply(null, this); 
 
}; 
 

 
Array.prototype.min = function() { 
 
    return Math.min.apply(null, this); 
 
};
<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
    <meta charset=utf-8 /> 
 
    <title> Series Finder </title> 
 
    </head> 
 
    <body> 
 

 
    <table width="50%" border="0" align="center"> 
 
     <tr> 
 
     <td width="13%">Input Series of Number:</td> 
 
     <td width="29%"><input name="box1" type="text" id="box1" value="12,12,22,9,1,20" /></td> 
 
     </tr> 
 
     <tr> 
 
     <td>&nbsp;</td> 
 
     <td></td> 
 
     </tr> 
 
     <tr> 
 
     <td>Max :</td> 
 
     <td><div id="max"> </div></td> 
 
     </tr> 
 
     <tr> 
 
     <td>Min :</td> 
 
     <td><div id="min"> </div></td> 
 
     </tr> 
 
     <tr> 
 
     <td>Sum :</td> 
 
     <td><div id="sum"> </div></td> 
 
     </tr> 
 
     <tr> 
 
     <td>Average :</td> 
 
     <td><div id="avg"> </div></td> 
 
     </tr> 
 
     <tr> 
 
     <td>Reverse Order :</td> 
 
     <td><div id="reverse"> </div></td> 
 
     </tr> 
 
     <tr> 
 
     <td>&nbsp;</td> 
 
     <td></td> 
 
     </tr> 
 
    </table> 
 
<button onclick="calculate()">calculate</button> 
 
    </body> 
 
</html>

+0

感謝其工作:) –

+0

是我的榮幸..祝你好運.. –

3

的ECMAScript 2015年解決方案:

const input = [12, 12, 22, 9, 1, 20]; 

let max = Math.max(...input); 
let min = Math.min(...input); 
let sum = input.reduce((r, i) => r + i, 0); 
let average = (sum/input.length).toFixed(2); 
let reverse = input.slice().reverse(); 
相關問題