Реферат: Разработка лабораторного практикума Создание тестирующей программы
На третьем этапе необходимо создать проект для запуска заставки, а затем через 10 сек вопроса с вводом ответа (Project3, Unit1.pas, Unit2.pas). Для этого необходимо открыть первый проект, добавить в него модуль Unit2 из проекта 2. В коде модуля Unit1 необходимо в разделе описания модулей добавить второй модуль (Unit2), а в процедуре Timer1Timer убрать команду Close, вместо которой необходимо отключить таймер, сделать первую форму невидимой, и активизировать вторую форму (Приложение 1 и 2). А также в коде модуля Unit2 вместо Close необходимо ввести команду Application.Terminate (блок 2).
На четвертом этапе нужно создать проект для вопроса с выбором ответа из выпадающего списка (Project4, Unit4.pas, Form4). Пример такой формы приведен на рис.3.
Необходимо задать также свойства компонентов (табл.4).
Таблица 4
Свойства компонентов
ComboBox1 | Text | Ответ из списка |
Items | Список ответов (например, Простой Вычисляемый Сравнивающий) | |
Button1 | (OK) | обработка выбранного ответа |
Рис.3. Вопрос с выбором ответа из выпадающего списка
В списке варианты ответов заранее заданы, поэтому необходимо выполнить обычный выбор необходимо ответа. Выбранный ответ сравнивается с эталонным (Приложение 2), и если он правильный, программа завершает свою работу (блок 3).
На пятом этапе необходимо создать проект для вопроса с выбором одного ответа (Project5, Unit5.pas, Form5). Пример такого проекта приведен на рис.4.
Рис.4. Вопрос с выбором ответа
Необходимо задать свойства компонентов, используемых в этом проекте (табл.4).
Таблица 4
Свойства компонентов
RadioButton1 | Caption | Первый ответ |
RadioButton2 | Caption | Второй ответ |
RadioButton3 | Caption | Третий ответ |
RadioButton4 | Caption | Четвертый ответ |
Button1 | (OK) | обработка выбранного ответа |
Правильный ответ находится в третьей радиокнопке, поэтому при выборе ответа, и нажатии на кнопку OK, происходит следующее: проверяется, какая радиокнопка была выбрана (Приложение 2, рис.14, блок 2), и если результат проверки положителен, то происходит завершение работы приложения (блок 3).
На шестом этапе нужно создать проект для вопроса с выбором нескольких правильных ответов (Project6, Unit6.pas, Form6). Пример такого проекта приведен на рис.5.
Рис.5. Вопрос с несколькими ответами
При выделении правильных ответов, и нажатии кнопки OK, происходит обработка ответа (Приложение 2). Если, при проверки условия, происходит совпадение (рис.15, блок2), то приложение завершает свою работу (блок 3). Кнопка Exit позволяет не отвечать на вопрос, и прервать выполнение этого приложения, т.е. она работает аналогично кнопкам Exit, описанным выше.
На седьмом этапе необходимо создать проект для вопроса с выбором ответа с помощью картинки (Project7, Unit7.pas, Form7). Пример такого проекта приведен на рис.6.
Рис.6. Вопрос с картинкой
В этом случае на форму помещаются компоненты CheckBox, а картинка создается в любом графическом редакторе, например в Adobe PhotoShop 6.0.
Обработка правильного ответа осуществляется аналогично предыдущему проекту (Приложение 2, рис.16). Проверяется условие совпадения ответа (блок 2), и в случае совпадения приложение завершает свою работу (блок 3).
На восьмом этапе необходимо дополнить Project3 новыми вопросами, представленными в этапах 4-7. Сохранить проект предлагается под именем Project8.
Для этого в каждом модуле при обработке кнопки ОК нужно сделать невидимой текущую форму и вызывать следующую форму по аналогии с третьим этапом, и по окончании тестирования сделать вывод количества и процента правильных ответов (рис.7).
Рис.7. Результат тестирования
Глобальные переменные, необходимые для подсчета количества и процента правильных ответов, необходимо объявить в специальном модуле UNIT0.pas. Этот модуль, не содержащий никакой формы, вставляется в проект по команде FILE NEW с выбором UNIT, а затем сохраняется как модуль UNIT0.pas. В каждом модуле в конструкции USES … нужно добавить UNIT0 (Приложение 6).
При вычислении результатов тестирования используется модуль Unit8, в котором вызывается процедура TForm8.FormActivate (Приложение 2, рис.17).
Здесь происходит преобразование переменных и вывод их на форму. Во-первых, общее количество вопросов (блоки 2 и 3), во-вторых, количество правильных ответов (блоки 4 и 5), и в-третьих подсчет процента правильных ответов и вывод его (блоки 6 и 7).
Все остальные процедуры построены аналогичным образом, согласно этапам 3-7 (Приложение 3).
На девятом этапе необходимо модифицировать проект восьмого этапа (Project8), разработав процедуру ввода исходной информации о вопросах и ответах из текстовых файлов. Для этого нужно создать пять (по количеству видов вопросов) текстовых файлов – 1.ТХТ, 2.ТХТ, 3.ТХТ, 4.ТХТ, 5.ТХТ.
Информацию в каждом файле набрать в виде:
Первая строка – текст вопроса
Вторая строка – номера правильных ответов
Третья, четвертая, пятая и шестая строки – варианты ответов
Седьмая строка – вид вопроса (1 – 5).
В модуле UNIT0 необходимо написать процедуру ввода из текстового файла (Приложение 4, рис.23). Здесь сначала открывается необходимый текстовый файл (блоки 2 и 3) и переменной-счетчику NSTR присваивается значение 1 (блок 4). После этого производится ввод вопроса из этого файла (блоки 5 и 6), потом читается правильный ответ (блоки 7 и 8). Далее считываются варианты ответов, которые помещаются в специальный массив Otvet (блоки 9-11), и номер (вид) вопроса (блоки 12 и 13).