Как пользовательский ввод в операторе if имеет несколько правильных ответов - PullRequest
1 голос
/ 26 марта 2019

Я пытаюсь создать код, в котором пользователь может ввести свою процентную оценку, и он получит буквенную оценку.Я распечатал шкалу в верхней части кода, а затем у меня есть кнопка, по которой пользователь нажимает, чтобы запустить функцию.Я хочу, чтобы код давал пользователю оценку буквы, если он вводит процентное значение в пользовательском вводе и в оператор if включают все значения, которые его удовлетворят.

function myFunction() {
  var q1 = prompt("Please enter your percentage grade: ");
  if (q1 <= 100 && grade > 90) {
    alert("You have an A");
  }
  if (q1 <= 89 && grade > 80) {
    alert("You have a B");
  }
  if (q1 <= 79 && grade > 70) {
    alert("You have a C");
  }
  if (q1 <= 69 && grade > 60) {
    alert("You have a D");
  }
  if (q1 <= 59 && grade > 50) {
    alert("You have an E");
  }
  if (q1 > 50) {
    alert("You have an F");
  } else {
    alert("Broken")
  }
}

var q2 = prompt("Would you like to enter another grade? (Please type Yes or No) ");
if (q2 == Yes) {
  // This is where the loop would go
} else() {
  break

}

}
<!DOCTYPE html>
<html>

<body>
  <h1>
    Grade Scale
  </h1>
  <p1>
    <table>
      <tr>
        <th>A</th>
        <th>B</th>
        <th>C</th>
        <th>D</th>
        <th>E</th>
        <th>F</th>
      </tr>
      <tr>
        <td>100-90</td>
        <td>89-80</td>
        <td>79-70</td>
        <td>69-60</td>
        <td>59-50</td>
        <td>
          < 50 </td>
      </tr>
    </table>
  </p1>
  <p2>
    <button onclick="myFunction()">Click Here To See Your Conversion!</button>
  </p2>
</body>

</html>

1 Ответ

0 голосов
/ 26 марта 2019

Я бы порекомендовал использовать else if, чтобы предупреждение появлялось только один раз и возвращало только нужную буквенную оценку.

  if (q1 >= 90) {
    alert("You have an A");
  }
  else if (q1 >= 80) {
    alert("You have a B");
  }
  else if (q1 >= 70) {
    alert("You have a C");
  }
  else if (q1 >= 60) {
    alert("You have a D");
  }
  else if (q1 >= 50) {
    alert("You have an E");
  }
  else if (q1 < 50) {
    alert("You have an F");
  }
  else {
    alert("Broken")
  }

Также рекомендуется проверять в верхней части страницы, чтобы ловить недействительные записи.и т. д.

if (q1 < 0 || q1 > 100) {
  alert("Invalid percentage entered.");
} else if ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...