Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

86
Visualizações
Encontrar la calificación basada en la mejor puntuación

Entonces mi programa quiere que el usuario ingrese el número de estudiantes y sus puntajes. Según la mejor puntuación, seguirá este esquema de calificación:

  1. La puntuación es > o = la mejor - 10, entonces la calificación es A.
  2. La puntuación es > o = la mejor - 20, entonces la calificación es B.
  3. La puntuación es > o = la mejor - 30, entonces la calificación es C.
  4. La puntuación es > o = la mejor - 40, entonces la calificación es D.
  5. Cualquier otra cosa es una F

Este es mi código hasta ahora:

 var readlineSync = require('readline-sync') let scoreArray = [] let best = 0 students = readlineSync.question('Enter the number of students: '); for (var x = 0; x < students; x++){ score = readlineSync.question('Enter Score: ') scoreArray.push(score); } for (var i = 0; i < scoreArray.length; i++){ var data = scoreArray[i]; if(best < scoreArray[i]){ best = scoreArray[i]; } if(scoreArray[i] >= (best-10)){ grade = 'A'; }else if(scoreArray[i] >= (best-20)){ grade = 'B'; }else if(scoreArray[i] >= (best-30)){ grade = 'C'; }else if(scoreArray[i] >= (best-40)){ grade = 'D'; }else { grade = 'F'; } console.log('Student ' + i + ' score is ' + scoreArray[i] +' and grade is ' + grade); }

Cuando ejecuto el código, a veces muestra la calificación correcta ya veces no. Debería mostrar esto:


  • Ingrese el número de estudiantes: 4
  • Introducir puntuación: 40
  • Introducir puntuación: 55
  • Introducir puntuación: 70
  • Introduzca la puntuación: 58
  • El puntaje del estudiante 0 es 40 y la calificación es C. El puntaje del estudiante 1 es 55 y la calificación es B. El puntaje del estudiante 2 es 70 y la calificación es A. El puntaje del estudiante 3 es 58 y la calificación es B.

En su lugar, muestra las calificaciones A,A,A,B.

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Parece que está iterando sobre scoreArray y actualizando mejor en el camino. Primero debe obtener el puntaje máximo de scoreArray para que sepa cuál es el mejor para comenzar, y luego iterar sobre scoreArray . Consulte https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/max para obtener más información, pero coloque var best = Math.max(...scoreArray); antes de su ciclo for, y luego su lógica condicional debería funcionar.

 scoreArray = [49, 81, 72, 80, 81, 36, 58]; var best = Math.max(...scoreArray); for (var i = 0; i < scoreArray.length; i++) { var data = scoreArray[i]; if (scoreArray[i] >= (best - 10)) { grade = 'A'; } else if (scoreArray[i] >= (best - 20)) { grade = 'B'; } else if (scoreArray[i] >= (best - 30)) { grade = 'C'; } else if (scoreArray[i] >= (best - 40)) { grade = 'D'; } else { grade = 'F'; } console.log('Student ' + i + ' score is ' + scoreArray[i] + ' and grade is ' + grade); }

about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda