Проверка времени реакции пользователя

Сегодня мы сделаем небольшой эксперимент с таймером. Существует бибилиотека time, которая позволяет вычислять дату и запускать таймер.



Посмотрите на приведенный ниже код программы. Он использует библиотеку времени для хранения текущего времени (в виде количества секунд) в разных строках кода.


Код выполняется достаточно быстро, обычно всего за несколько миллисекунд. Это называется секвенированием. Однако через какое-то код приостанавливается, ожидая ввода пользователем значения с клавиатуры. Это происходит в Python каждый раз при использовании входной инструкции.


Перед выполнением программы даём время чтобы прочитать текст. Для этого отводим 2 секунды командой time.sleep(2).


Определяя время до и после входной инструкции, мы можем рассчитать, сколько времени потребовалось пользователю для ввода ответа. Это подход, используемый следующей программой Python, используемой для расчёта времени реакции (как быстро вы нажмете клавишу возврата).



import time
print("><><><><><><><><><><><><")
print("> проверка реакции <")
print("><><><><><><><><><><><><")
time.sleep(2)
start = time.time()
text = input("Нажмите клавишу Enter!")
end = time.time()
duration = round(end - start,2)
print("Время вашей реакции: " + str(duration) + " секунд.")

Попробуйте переделать код программы следующим образом:


  1. Программа генерирует случайное число от 1 до 10.
  2. Выведите его на экран и попросите пользователя подождать это количество секунд до нажатия клавиши возврата,
  3. Вычислите, как долго они ждали, и дайте пользователю оценку следующим образом:
  4. Если пользователь ждал больше, чем заданное время, он проигрывает: 0 очков,
  5. Если пользователь нажимает клавишу возврата в нужное время или до 1/2 секунды раньше: 50 очков,
  6. Если пользователь нажимает клавишу возврата от 1 секунды до 1/2 секунды раньше: 25 очков,
  7. Если пользователь нажимает клавишу возврата от 2 секунд до 1 секунды раньше: 10 очков,
  8. Если пользователь нажимает клавишу возврата более чем на 2 секунды раньше: 0 очков.

Вычисление суммы цифр целого числа Создание игры на Питоне. «Угадай число»

из кеша
0.02869