Review JavaScript Fundamentals by Building a Gradebook App - Step 4

Tell us what’s happening:

idk what is happening at this point, the function is correct and the output is also correct, i’m still getting an error message!!

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) { 
  if (studentScore >= 60){
return console.log("Class average:" + getAverage(totalScores)+"." + "Your grade: " + getGrade(studentScore) +"."+ " You passed the course.")
}else {
  return console.log("Class average:" + getAverage(totalScores)+"." + " Your grade: " + getGrade(studentScore)+"." + " You failed the course.")
}
}
console.log(studentMsg([92, 88, 12, 77, 57, 100, 67, 38, 97, 89], 37));

// 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/126.0.0.0 Safari/537.36

Challenge Information:

Review JavaScript Fundamentals by Building a Gradebook App - Step 4

A console log returns nothing

so what is it that i’m supposed to do ?

Hi there,

The instruction asked us to return the string, not console.log() the messages.

You shoud re-check dots (.) and space in the message carefully to match the required format.

And lastly, this is not the cause to make the test fail but you can use the hasPassingGrade function to check if the student passed or failed

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

function studentMsg(totalScores, studentScore) {

if (hasPassingGrade(studentScore)){

return “Class average:” + getAverage(totalScores) + ". Your grade: " + getGrade(studentScore) + “. You passed the course.”

}else {

return “Class average:” + getAverage(totalScores) + ". Your grade: " + getGrade(studentScore)+ “. You failed the course.”

}

}

console.log(studentMsg([92, 88, 12, 77, 57, 100, 67, 38, 97, 89], 37));

this is how it looks after i modified it but still not passing

Please carefully re-check the messages to match the required format.

For example: after Class average: there should be a space.

1 Like

alright i fixed some of the spaces it worked

1 Like

yeah yeah it was it thanks a lot

1 Like

No, returning nothing is not what you are supposed to do