Содержание


Постановка задачи 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. При срабатывании таймера происходит сравнение эталона и полученного текста, выводится заключение.