有人可以帮我解决这个问题。
编写一个程序,该程序接受用户的输入以读取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>
答案 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>