Я написал программу на питоне, которая представляет из себя тренажер по запоминанию английских слов.
Есть стандартная библиотека curses - низкоуровневая библиотека управления терминалом для Unix-подобных операционных систем, позволяющая создавать приложения с текстовым интерфейсом пользователя, написанная на си.
В питоне есть модуль с аналогичным названием, который использует api-функции из этой библиотеки.
Документацию можно почитать тут
Тренажер работает по следующему алгоритму:
При первом запуске появится меню, с помощью которого нужно выбрать один из тематических словарей.
Каждый такой тематический словарь представляет из себя текстовой файл, каждая строка которого состоит из пары слов, разделенных точкой с запятой.
Вместо одного слова можно поставить произвольное количество слов, слева - английский вариант, справа - русский,
например:
При запуске тренажер инициализирует несколько переменных:
настройка языка - либо eng, либо ru
стартовое число вопросов, минимум - 3
число вариантов ответа на один вопрос, минимум - 3
время для ответа на один вопрос, в секундах, минимум - 1
Настройка языка - от этого параметра зависит направление перевода - с английского на русский или наоборот.
Стартовое число вопросов - минимальное значение равно трем, дальше его можно увеличивать в процессе тренировки до бесконечности.
Число вариантов ответа на один вопрос, минимум - 3. Обычно 3-х вариантов ответа достаточно.
Время для ответа на один вопрос, в секундах, минимум - 1. Его можно поставить с большим запасом, это уже зависит
от ваших личных предпочтений.
Т.е. эти настройки вы можете настраивать каждый раз перед запуском тренажера.
После запуска у вас появляется слово на выбранном языке и три варианта ответа, один из вариантов ответа правильный.
Нужно выбрать правильный вариант ответа с помощью управляющих стрелок либо клавиши пробел.
Выбрав правильный ответ, можно либо нажать на клавишу enter, либо просто ждать.
После того, как будет пройден весь список, будет показан результат - либо ошибки, либо все правильно.
В первом случае будут показаны те слова, в которых вы допустили ошибку, с правильными вариантами переводов.
Во втором случае будут показаны все слова вместе с переводом
Далее вы можете пройти весь список еще раз, при этом те же слова будут перетасованы в ином порядке.
Вы можете выбрать один из двух вариантов прохождения теста. В первом случае слова берутся с начала текстового файла по порядку от начала текстового файла, и очередное слово - или несколько слов - могут быть добавлены каждый раз, когда вы проходите тест. Добавление слова выполняется с помощью клавиши плюс,
Второй вариант позволяет вам выбрать произвольный набор слов, для этого нужно перейти в режим выбора с помощью клавиши '/', слова выбираются из списка с помощью клавиши пробел.