Review JavaScript Fundamentals by Building a Gradebook App - Step 4

Tell us what’s happening:

i think my code iscorrect but why does it not pass please help

Your code so far

function getAverage(scores) {
  let sum = 0;

  for (const score of scores) {
    sum += score;
  }

  return sum / scores.length;
}

function getGrade(score) {
  if (score === 100) {
    return "A++";
  } else if (score >= 90) {
    return "A";
  } else if (score >= 80) {
    return "B";
  } else if (score >= 70) {
    return "C";
  } else if (score >= 60) {
    return "D";
  } else {
    return "F";
  }
}

function hasPassingGrade(score) {
  return getGrade(score) !== "F";
}


// User Editable Region

function studentMsg(totalScores, studentScore) {let passFail; if(hasPassingGrade(studentScore)){passFail = "You passed the course."}else{passFail = "You failed the course."} return"Class average:" + getAverage(totalScores) + ".Your grade:" + getGrade(studentScore) +"." +passFail;
}
console.log(studentMsg([92, 88, 12, 77, 57, 100, 67, 38, 97, 89], 37));console.log(studentMsg([56,23,89,42,75,11,68,34,91,19,],100))

// User Editable Region


Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36

Challenge Information:

Review JavaScript Fundamentals by Building a Gradebook App - Step 4

  • you are correct, code is fine but “return” statement has some “punctuation and spaces” missing, address those and it should be fine

hint: checkout error message for “return statement” and construct your return statement as such

happy coding :slight_smile:

you may want to put your code on multiple lines so it is easier to read, then check if your string matches exactly the expected one

you can add this to confront your output with the expected one:

console.log("actual:  ", studentMsg([92, 88, 12, 77, 57, 100, 67, 38, 97, 89], 37))
console.log("expected:", "Class average: 71.7. Your grade: F. You failed the course.")

thanx so much it was indeed my spacing

1 Like