Review JavaScript Fundamentals by Building a Gradebook App - Step 3

Tell us what’s happening:

can some please guide me what is wrong here i have been trying to solve this since hours

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";
  }
}


// User Editable Region

function hasPassingGrade(getGrade) {
  function getGrade(score) {
if(score===100){
  return "A++";
} else if(90<=score && score<=99){
  return "A";
}else if(80<=score && score<=89){
  return "B";
}else if(70<=score && score<=79){
  return "C";
}else if(60<=score && score<=69){
  return "D";
}else if(score<=59){
  return "F";
}
}
if(getGrade==="A++"||"A"||"B"||"C"||"D"){
  return true;
}else if(getGrade==="F"){
  return false;
}
  
}


console.log(hasPassingGrade(100));
console.log(hasPassingGrade(53));
console.log(hasPassingGrade(45));

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

Challenge Information:

Review JavaScript Fundamentals by Building a Gradebook App - Step 3

the getGrade function already exists, you don’t need to create it again.

here there are two issues, you are not calling getGrade, and the comparison needs to be done for each letter

here you are not calling getGrade again

1 Like