繁体   English   中英

评分学生 Hackerrank 挑战的回报预期?

[英]Grading Students Hackerrank challenge return expected?

任何熟悉Hackerrank上的学生评分挑战的人,请帮助我理解为什么这段代码没有通过。

function gradingStudents(grades) {
  let args = [...arguments];
  const round5 = (x) => {
    return Math.ceil(x / 5) * 5;
  }
  for (let i = 1; i < args.length; i++) {
    if (round5(args[i]) - args[i] < 3 && args[i] >= 38) {
      args[i] = round5(args[i])
    }
  }
  args.shift()
  return args.join('\n') + '\n'
//return args
//return args.join(' ')
}

我正在失去理智。 我尝试了各种回报,但都没有奏效。

看起来您认为学生人数和成绩都被传递给gradingStudents函数,但实际上传递了一个参数,即包含grades的数组。

因此,无需使用arguments ,您可以直接使用grades数组。 而且你只需要从函数中返回更新的成绩数组,你不需要担心输出格式。

 function gradingStudents(grades) { const round5 = (x) => { return Math.ceil(x / 5) * 5; }; for (let i = 0; i < grades.length; i++) { if (round5(grades[i]) - grades[i] < 3 && grades[i] >= 38) { grades[i] = round5(grades[i]); } } return grades; } console.log(gradingStudents([73, 67, 38, 33]));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM