Содержание
Постановка задачи 3
Общее описание программы 4
Описание интерфейса 5
Описание алгоритма работы программы 7
Описание программной реализации 8
Листинг программы 9
Список литературы 12
Постановка задачи
Целью настоящей работы является создание клавиатурного тренажера.
Требования к программе:
* Программа должны быть разработана в среде Borland C++ Builder 6.0 на языке С++;
* Клавиатурный тренажер должен предоставлять три уровня сложности.
* Для каждого задания обучаемый должен быть ограничен временным промежутком.
Общее описание программы
Созданная программа предоставляет следующие уровни сложности:
1. На первом уровне сложности обучаемому предлагается вводить появляющиеся буквы. Время для набора первой буквы равно одной секунде, с каждой последующей буквой время уменьшается по арифметической прогрессии. Всего в данном тесте предусмотрено около 50ти символов, включая знаки препинания, буквы и цифры, которые выдаются в случайном порядке. По результатам теста обучаемый получает информацию о процентном количестве совершенных ошибок.
2. На втором уровне сложности обучаемому предлагается набирать слова. Время для каждого слова начинается с 3х секунд и в дальнейшем уменьшается в арифметической прогрессии. Всего в тесте предусмотрено около 30ти слов, которые выдаются в случайном порядке. По результатам теста обучаемый получает информацию о процентном количестве неправильно набранных слов.
3. На третьем уровне сложности обучаемому предлагается набрать заданный текст. Время для набора текста составляет две минуты. По прошествии двух минут набранный текст сравнивается с исходным и выдается заключении о прохождении либо непрохождении текста.
Описание интерфейса
Элементами интерфейса являются следующие компоненты:
* Окна и формы. Всего в программе задействовано две формы – для определения уровня сложности и прохождения теста.
* Сообщения. Сообщения используются для инструктажа, предупреждений и вывода результатов.
* Элементы форм, имеющие практическое применение.
Опишем созданные формы и их элементы.
На рисунке 1 приведена первая форма.
Рисунок 1. Основная форма
Как видно, на форме предлагается выбрать уровень сложности. В случае, если пользователь нажмет кнопку Старт без выбора уровня, будет выведено предупреждающее сообщение.
На рисунке 2 приведена форма для тренировки.
Как видно из рисунка, после нажатия кнопки Начать, пользователю предоставляются инструкции по заданному уровню сложности. В черном поле белыми буквами выводится заданный текст или буквы, а в нижнем белом поле пользователь вводит самостоятельно.
При нажатии кнопки Стоп текущая тренировка завершается.
После окончания теста выводится сообщение о его результатах.
Рисунок 2. Форма для тренировки.
Описание алгоритма работы программы
Алгоритм работы программы построен на использовании таймера и событий нажатий клавиш.
Алгоритм различается для уровней сложности, так как они используют разные типы данных. Для первых двух уровней сложности алгоритм очень похож за несколькими изменениями.
1й и 2й уровни сложности.
1. При нажатии кнопки Начать обнуляется счетчик ошибок, очищаются поля и задается начальное время таймера (1 и 3 секунды соответственно). Таймер запускается.
2. При нажатии клавиш проверяется, не выполнен ли тест полностью.
3. Если тест закончен, то подсчитывается и выводится процент ошибок.
4. Если тест не закончен, то таймер запускается заново (для второго уровня – только в случае окончания набора слова).
5. При срабатывании таймера происходит сравнение эталона и полученного текста, пересчитывается количество ошибок, выводится следующее значение, обнуляется поле ввода.
Для 3его уровня сложности.
1. При нажатии кнопки Начать обнуляется счетчик ошибок, очищаются поля и задается начальное время таймера (2 минуты). Таймер запускается.
2. При срабатывании таймера происходит сравнение эталона и полученного текста, выводится заключение.