Review JavaScript Fundamentals by Building a Gradebook App - Step 4

Tell us what’s happening:

So I made it so the outputs outputs what the lesson requires but it still have not passed me

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) {
const a = getAverage(totalScores);
const b = getGrade(studentScore);
  if (b !== 'F') {
  return 'Class average: ' + a + '. Your grade: ' + b + '. You have passed the course.'
  } else {
    return 'Class average: ' + a + '. Your grade: ' + b + '. You have failed the course.'
    }
}
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 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 OPR/109.0.0.0

Challenge Information:

Review JavaScript Fundamentals by Building a Gradebook App - Step 4

Your code is basically fine, except that the string which you’re returning in either case doesn’t quite match the requirements.

Add this between your other console.log() statements to see where the difference is:

// this is an example of expected output
console.log("Class average: 71.7. Your grade: F. You failed the course.")