Java评分系统

时间:2018-11-29 06:31:22

标签: javascript html

有人可以帮我解决这个问题。

编写一个程序,该程序接受用户的输入以读取5个主题的卷号和分数,并计算分数的总和和平均值。确保每个主题分数不大于100。然后进行评分。您必须根据平均值计算成绩。

您必须根据以下条件打印成绩:

如果平均值大于80且小于100,则成绩为A

如果平均值大于75且小于80,则成绩为B

这是我的代码:如何在此代码中包含条件。

function grading() {
    var val1 = parseInt(document.getElementById("num1").value);
    var val2 = parseInt(document.getElementById("num2").value);
    var val3 = parseInt(document.getElementById("num3").value);
    var val4 = parseInt(document.getElementById("num4").value);

    var final = val1 + val2 + val3 + val4;
    document.getElementById("result").innerHTML = +final  + " / 400 ";
}

function average() {
    var val1 = parseInt(document.getElementById("num1").value);
    var val2 = parseInt(document.getElementById("num2").value);
    var val3 = parseInt(document.getElementById("num3").value);
    var val4 = parseInt(document.getElementById("num4").value);

    var final1 = val1 + val2 + val3 + val4; 
    var total = final1 / 4;
    document.getElementById("avrg").innerHTML = +total;
}

HTML代码:

 <body>
     <label>English</label>
     <input type="text" id="num1"><br>
     <label>English</label>
     <input type="text" id="num2"><br>
     <label>English</label>
     <input type="text" id="num3"><br>
     <label>English</label>
     <input type="text" id="num4"><br>
     <button onClick="grading()">Total</button>
     <p id="result"></p><br>
     <button onClick="average()">Average</button><br>
     <p id="avrg"></p>
     <button onClick="system()">Grade</button><br>
     <p id="grad"></p>
</body>

1 个答案:

答案 0 :(得分:0)

您必须创建函数才能显示最终成绩。声明变量 total ,以便您可以在函数内部检查该变量以显示预期的成绩。

条件范围为80至100-A级

if(total >= 80 && total <= 100)

条件范围为75至79-B级

else if(total >= 75 && total < 80)

请注意:我已经将函数名称从 system 更改为 gradeFinal ,这更有意义。我还将建议您使用 textContent 而不是 innerHTML ,它更加快捷和可预测。

您可以尝试以下方式:

function grading(){
  var val1 = parseInt(document.getElementById("num1").value);
  var val2 = parseInt(document.getElementById("num2").value);
  var val3 = parseInt(document.getElementById("num3").value);
  var val4 = parseInt(document.getElementById("num4").value);

  var final = val1 + val2 + val3 + val4;
  document.getElementById("result").textContent = +final  + " / 400 ";
}


var total;
function average(){
  var val1 = parseInt(document.getElementById("num1").value);
  var val2 = parseInt(document.getElementById("num2").value);
  var val3 = parseInt(document.getElementById("num3").value);
  var val4 = parseInt(document.getElementById("num4").value);

  var final1 = val1 + val2 + val3 + val4; 
  total = final1 / 4;
  document.getElementById("avrg").textContent = +total;
}

function gradeFinal(){
  if(total >= 80 && total <= 100)
    document.getElementById("grad").textContent = 'A';
  else if(total >= 75 && total < 80)
    document.getElementById("grad").textContent = 'B'
}

document.querySelectorAll('input[type=text]').forEach(function(input){
  input.addEventListener('input',limitRange);
});

function limitRange() {
  if (this.value < 0) this.value = 0;
  if (this.value > 100) this.value = 100;
}
<label>English</label>
<input type="text" id="num1"><br>
<label>English</label>
<input type="text" id="num2"><br>
<label>English</label>
<input type="text" id="num3"><br>
<label>English</label>
<input type="text" id="num4"><br>
<button onClick="grading()">Total</button>
<p id="result"></p><br>
<button onClick="average()">Average</button><br>
<p id="avrg"></p>
<button onClick="gradeFinal()">Grade</button><br>
<p id="grad"></p>