跳水比赛,8个评委打分。运动员的成绩是8个成绩取掉一个最高分,去掉一个最低分,剩下的6个分数的平均分就是最后得分。使用一维数组实现打分功能。
解决方法 如下:
<head>
<title>跳水比赛</title>
<meta charset="utf-8">
<style type="text/css">
table{
height:300px;
font-size:20px;
font-family:华文新魏;
font-weight:bold;
}
</style>
</head>
<body>
<center>
<form>
<script type="text/javascript">
document.write("<table>");
for(var i=1;i<=8;i++){
document.write("<tr><td>");
document.write("<label>第"+i+"个数:</label>");
document.write("<input type='text'>");
document.write("</td></tr>");
}
document.write("<tr><td><label>最高分为;</label><input type='text' id='max'></td></tr>");
document.write("<tr><td><label>最低分为;</label><input type='text' id='min'></td></tr>");
document.write("<tr><td><label>最后得分为;</label><input type='text' id='res'></td></tr>");
document.write("<tr><td><input type='button' value='随机产生分数' onclick='Score()'><input type='button' value='计算' onclick='Jisuan()'><input type='button' value='重置'></td></tr>");
document.write("</table>");
function Score(){
var myscore=document.getElementsByName("score");
for(var i=0;i<8;i++){
var num=Math.random();
num=num*9;
num=num.toFixed(2);
num=num>=8?8:num;
myscore[i].value=num;
}
}
function Jisuan(){
var myscore=document.getElementsByName('score');
var max=min=Number(myscore[0].value);
var res=0;
for(var i=0;i<myscore.length;i++){
var score=Number(myscore[i].value);
if(max<=score){
max=score;
}
if(min>=score){
min=score;
}
res+=score
}
res=(res-max-min)/6
document.getElementsById('max').value=max;
document.getElementsById('min').value=min;
document.getElementsById('res').value=res;
}
</script>
</form>
</center>
</body>