Помогите найти ошибку в коде и добиться моей основной цели(сделать игру)

Надо сделать игру на отгадывание числа:

Продолжаешь отгадывать одно и тоже число пока не отгадаешь

Вот код:

<!DOCTYPE html>
<script>
  'use strict';
  do {
    num = prompt('Игра: отгадай число от 1 до 100', 0);
  } while (num == a && num);
  const a = (Math.random() * 100000) % 100;

  if (num == a) {
    alert('Угадал!');
  }
  if (num > a) {
    alert('Твой ответ больше задуманного числа! Попробуй еще!', '');
  }
  if (num < a) {
    alert('Твой ответ меньше задуманного числа! Попробуй еще!', '');
  }
</script>

Где здесь ошибка???


Ответы (1 шт):

Автор решения: azlov

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

const a = (Math.random() * 100000) % 100; // инициализировать a    
do {
    let num = prompt('Игра: отгадай число от 1 до 100', 0);
    if (num == a) {
        alert('Угадал!');
    } else if (num > a) {
        alert('Твой ответ больше задуманного числа! Попробуй еще!', '');
    } else if (num < a) {
        alert('Твой ответ меньше задуманного числа! Попробуй еще!', '');
    }
} while (num !== a && num); // пока значения не совпадут
  

  
→ Ссылка