рефераты рефераты
Главная страница > Курсовая работа: Разработка программы с помощью языка программирования Delphi  
Курсовая работа: Разработка программы с помощью языка программирования Delphi
Главная страница
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
География экономическая география
Геодезия
Геология
Госслужба
Гражданский процесс
Гражданское право
Иностранные языки лингвистика
Искусство
Историческая личность
История
История государства и права
История отечественного государства и права
История политичиских учений
История техники
История экономических учений
Биографии
Биология и химия
Издательское дело и полиграфия
Исторические личности
Краткое содержание произведений
Новейшая история политология
Остальные рефераты
Промышленность производство
психология педагогика
Коммуникации связь цифровые приборы и радиоэлектроника
Краеведение и этнография
Кулинария и продукты питания
Культура и искусство
Литература
Маркетинг реклама и торговля
Математика
Медицина
Реклама
Физика
Финансы
Химия
Экономическая теория
Юриспруденция
Юридическая наука
Компьютерные науки
Финансовые науки
Управленческие науки
Информатика программирование
Экономика
Архитектура
Банковское дело
Биржевое дело
Бухгалтерский учет и аудит
Валютные отношения
География
Кредитование
Инвестиции
Информатика
Кибернетика
Косметология
Наука и техника
Маркетинг
Культура и искусство
Менеджмент
Металлургия
Налогообложение
Предпринимательство
Радиоэлектроника
Страхование
Строительство
Схемотехника
Таможенная система
Сочинения по литературе и русскому языку
Теория организация
Теплотехника
Туризм
Управление
Форма поиска
Авторизация




 
Статистика
рефераты
Последние новости

Курсовая работа: Разработка программы с помощью языка программирования Delphi


Рисунок 2.1 – Внешний вид формы FormAvto

Для вывода вопросов, ввода ответов пользователя предусмотрим отдельную форму FormTest. Список объектов, используемых в форме приведен в таблице 2.2, а внешний вид приведен на рисунке 2.2.

Таблица 2.2 – Объекты экранной формы FormTest

Имя Тип Назначение
Label1 TLabel надпись «Текущий вопрос»
LbNom TLabel надпись, в которой будет выводиться номер текущего вопроса
StaticText1 TStaticText поле, в котором будет выводиться очередной вопрос
RGroup1 TRadioGroup поля для вывода вариантов ответов и их указания студентом
BitBtn1 TBitBtn кнопка «Принять ответ» для анализа ответа и перехода к следующему вопросу
BNewTest TButton кнопка для закрытия формы тестов и перехода на форму авторизации (для новой попытки тестирования)

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


Рисунок 2.2 – Внешний вид формы FormTest

Во избежание кратковременного завершения теста скроем системное меню окна, установив параметр формы FormTest. BorderIcons biSystemMenu равным false. Также в алгоритме следует предусмотреть, что в начале тестирования кнопка с надписью «Начать заново» должна быть невидимой, и должна появляться только после ответа на все вопросы и вывода итоговой оценки.

Анализируя все вышеизложенные предположения и разработанные формы, можем составить словесные алгоритмы приложения.

1.  Запустить экранную форму авторизации FormAvto

2.  При нажатии на кнопку «Начать» следует выполнить действия:

2.1  Сгенерировать базу вопросов, и перемешать их случайным образом;

2.2  Сформировать имя файла из имени студента и его группы и открыть файл для записи;

2.3  Обнулить количество правильных ответов;

2.4  Установить номер текущего вопроса на первый вопрос;

2.5  Скрыть форму FormAvto и показать форму с тестами FormTest;

2.6  Показать первый вопрос и варианты его ответов на форме FormTest;

2.7  Ожидать нажатия на кнопку «Принять ответ».

3.  При нажатии на кнопку «Принять ответ» следует выполнить действия:

3.1  Проанализировать выбранный вариант ответа и сравнить его с правильным, и если ответ правильный, то нарастить количество правильных ответов на 1;

3.2  Записать в файл протокола текущий вопрос и вариант, который выбрал пользователь в качестве ответа;

3.3  Если номер текущего вопроса меньше общего количества вопросов в базе, то нарастить номер на 1, вывести очередной вопрос на форму и перейти к началу пункта 3.

3.4  Если номер текущего вопроса равен количеству вопросов в базе, то:

3.4.1. подсчитать оценку пропорционально количеству правильных ответов;

3.4.2. показать сообщение с оценкой;

3.4.3. сделать кнопку «Начать заново» видимой

4.  При нажатии кнопки «Начать заново» закрыть форму с тестами FormTest и показать форму авторизации FormAvto.

Анализируя требования к функциям разрабатываемого приложения под разработанные экранные формы и словесный алгоритм, можно выделить следующие программные модули:

1)  Генерация базы вопросов;

2)  Перемешивание базы вопросов случайным образом;

3)  Анализ текущего ответа и переход на следующий вопрос, если вопрос не последний либо вывод результатов тестирования при достижении последнего вопроса;

4)  Модули перехода между экранными формами авторизации и тестирования.

Каждый из вышеприведенных модулей реализуем при помощи процедуры. Модуль 1 целесообразно запускать один раз при создании формы с тестами. Модуль 2 следует запускать каждый раз при начале нового теста, то есть при активизации формы с тестами. Модель 3 должен запускаться каждый раз при нажатии на кнопку «Принять ответ». Модули 4 должны быть обработчиками нажатий на кнопку «Начать» экранной формы авторизации и кнопку «Начать заново» экранной формы тестирования.

Составим алгоритм приложения, который представлен в приложении на рисунке A.1. На алгоритме приведены основные события экранных форм. В этом алгоритме:

Блок №4 реализован процедурой FormAvto, BitBtnStartClick,

блок №5 – процедурой FormTest. FormCreate,

блок №6 – процедурой FormTest. FormActivate,

блок №7 – процедурой FormTest BNewTestClick,

блок №8 реализован процедурой FormTest. BitBtn1Click.

Детальное описание разработанной программы, алгоритмов и их программной реализации приведено в последующих разделах.


3. Описание программных модулей

 

3.1 Описание переменных и объектов

В программе используется переменная FormAvto, которая представляет собой экранную форму. Объекты экранной формы были приведены в таблице 2.1. У формы имеется лишь один обработчик нажатия на кнопку BitBtnStart. Текст обработчика приведен в строках 26–32 листинга из приложения Б. В теле обработчика происходит считывание введенных имени и фамилии учащегося и его группы в переменные, после чего исходная форма скрывается и активизируется форма тестирования.

Переменная FormTest, представляет собой экранную форму, объекты которой приведены в таблице 2.2.

В разделе var опишем переменные, приведенные в таблице 3.1

Таблица 3.1 – Переменные программы

Наименование Тип Назначение
SFam, SGr String хранение фамилии и группы учащегося
fName String имя текстового файла для записи протокола
f TextFile переменная для работы с текстовым файлом
BasaV CVoprosi класс, хранящий базу вопросов и ответы
CurN byte номер текущего вопроса из базы
Ratio byte количество правильных ответов

Для хранения базы вопросов разработаем пользовательский класс CVoprosi. В классе содержится одно поле и два метода. Поле test – это динамический массив, в котором хранятся вопросы и ответы. При это каждый тест храниться в виде записи типа TTest со следующими полями:

Страницы: 1, 2, 3, 4, 5

рефераты
Новости