我正在尝试编写一个四舍五入到最接近的 5 倍数的 Javascript 函数。但是只有当变量与四舍五入到 5 的倍数之间的差值小于 3 时才四舍五入。(所以 53 会四舍五入到 55,但 52 将保持 52。)
此外,如果成绩 < 38,则为 F。
下面的代码是我的代码,但它运行不正常。我该如何修复它?
谢谢!!
grade = 71
function roundGrade (grade) {
const remainder = grade % 5
if (grade < 38) {
return "fail"; }
else if (remainder >= 3) {
grade; }
else if (remainder < 3) {
grade-remainder+5
}
}
最佳答案
如果余数为 3
或以上,则只需添加 5
并减去余数,可以使用 grade += 5 - 余数来完成
。另请注意,您根本不需要第二个 else if
条件,因为您只想在余数大于或等于 3 时修改
。最后,您需要确保您的函数实际上返回 grade
grade
以及returngradegrade
。
这可以从以下内容看出:
function roundGrade(grade) {
const remainder = grade % 5;
if (grade < 38) {
return "fail";
} else if (remainder >= 3) {
grade += 5 - remainder;
}
return grade;
}
console.log(roundGrade(71));
console.log(roundGrade(74));
关于javascript - 四舍五入到最接近的 5 的倍数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49971249/