Разработка приложения "Помощник экзаменатора"

 

Основные данные о работе

Версия шаблона2.1ФилиалНижегородский филиалВид работыКурсовая работаНазвание дисциплиныПрограммирование на ЯВУТемаРазработать приложение «Помощник экзаменатора»Фамилия студентаМаксимовИмя студентаАндрейОтчество студентаВладимирович№ контракта15000080601007

Содержание


Введение

. Описание алгоритма

.1 Выбор состава технических и программных средств

.2 Разработка программы

.3 Спецификация программы

Описание программы

Код программы

Текст программы. Часть 1

Текст программы. Часть 2

Текст программы. Часть 3

Заключение

Глоссарий

Список использованной литературы

Приложение А


Введение


Задание на курсовую работу по дисциплине «Разработать приложение «Помощник экзаменатора»»

Назначение программы: Тестирование учеников.

Область применения: операционная система MS Windows

По условию задания, необходимо разработать приложение которое будет тестировать учеников. Вопросы хранятся в отдельном файле.


1. Описание алгоритма


После запуска приложения необходимо выбрать сложность, после чего при нажатии кнопки загружаются вопросы, на которые необходимо ответить для прохождения теста. На тестирование даётся 5 минут. После загрузки появляется первый вопрос, с момента появления вопроса начинается отсчёт времени. По окончании 5 минут (из расчёта 5 минут на один тест) тест блокируется, и по результатам ставиться оценка. Если тест сдан за 5 минут, то тестирование закончено и выставляется оценка. Программа ставит «2» если менее 50% верных ответов, «3» если более 50% ответов верны, «4» если более 70% и «5» если более 90% верно.

Так же предусмотрен вариант пробного тестирование, результаты которого не учитываются при выставлении оценки. Если введенный пароль верный (пароль: «пароль»). Во время пробного тестирования верные ответы помечены красным цветом.


.1 Выбор состава технических и программных средств


Для разработки данного проекта выбрана среда программирования Delphi, т.к. она позволяет достаточно быстро создать приложения для ОС Windows за счет упрощения разработки визуальной части проекта.

Программа создавалась на персональном компьютере следующих характеристик:

Процессор Intel Pentium 4 3GHz500 Гб

ОЗУ DDR2 3 Гб

Видеокарта Nvidia GeForce 430

ОС Windows 7

Так же полагаю, что для нормальной стабильной работы данного приложения подойдут следующие технические параметры персонального компьютера:

Процессор Pentium 100 (или выше)500 Мб (и выше)

ОЗУ не менее 32 Мб

ОС Windows 98 или выше

Представленных параметров будет вполне достаточно для запуска разрабатываемого ПО. Дополнительного периферийного оборудования не потребуется.


.2 Разработка программы


Для создания приложения «Экзаменатор» была использована среда разработки Borland Delphi 6. Данный проект содержит одну форму и 2 стандартных диалога PasswordDlg и AboutBox:


Рис.1


: Компонент Form1

Свойства

CaptionЭкзаменаторPositionpoScreenCenterBorder StylebsSingle2: Компонент RadioGroup1

Свойства

CaptionВопросыItems1.Ответ1, 2.Ответ2, 3.Ответ3, 4.Ответ4

: Компонент BitBtn4

Свойства

CaptionНачатьModalResultmrAll

События

OnClickЗапуск тестирования, загрузка вопросов

: Компонент BitBtn1

Свойства

CaptionПролистка вопросовModalResultmrOk

События

OnClickПроверка ответа, загрузка последующего вопроса

: Компонент MainMenu1

Свойства

ItemsФаил(N1) Заново(N2) -------------(N3) Выход(N4) Настройки(N5) Тренировка(N6) Уровень сложности(N7) О программе(N8) 1(N11) 2(N21) 3(N31) 4(N41) 5(N51)События


N4ClickВыход из приложенияN8ClickВывод информации о программеN11ClickВыбор уровня, используется для всех уровняхN6ClickВвод пароля, запускает трен. режим

: Компонент BitBtn2

Свойства

CaptionЗакончитьModalResultmrIgnore

События

OnClickВыход из программы

: Компонент RadioGroup2

Свойства

CaptionИнформация о тесте

: Компонент Timer1

События

OnTimerВедется счет времени

: Компонент Timer1

Компоненты Label1-Label12 - отображают информацию о тесте.


.3 Спецификация программы


Исполняемый файл программы «Экзаменатор» имеет название Экзаменатор.exe и находится на диске А: в каталоге 5.1.4. Состав проекта:


НаименованиеОбозначениеПримечаниеProject1.dprФайл проектаСвязывает между собой все файлы, из которых состоит проектProject1.resФайл ресурсовСодержит пиктограммы, графические изображенияUnit1.pasФайл программного модуля Формы 1Определяет функциональность формы №1Unit1.dfmФайл формы 1Содержит список всех компонентов, включенных в форму 1Unit2.pasФайл программного модуля Формы 2Определяет функциональность формы №2Unit2.dfmФайл формы 2Содержит список всех компонентов, включенных в форму 2Unit3.pasФайл программного модуля Формы 3Определяет функциональность формы №3Unit3.dfmФайл формы 3Содержит список всех компонентов, включенных в форму 3Base.glfФаил с вопросамиФайл, содержащий список вопросовТабл.1


.4 Описание и запуск программы

приложение программа

Общие сведения: приложение «Экзаменатор» разработано в среде программирования Delphi 6.

Функциональное назначение программы: Прием тестов у учеников

Используемые технические средства: при разработке приложения «Экзаменатор» были использованы следующие технические и программные средства:

Процессор Intel Pentium 4 3GHz

ОЗУ 3 Гб.

ОС Windows 7 Professional

Вызов и загрузка: для того, чтобы запустить программу, необходимо запустить файл «Экзаменатор.exe»

После запуска программы выбираем сложность, после чего при нажатии кнопки загружаются вопросы на которые надо отвечать. Дается времени 5 минут. После загрузки появляется первый вопрос, время пошло. По истечению времени тест блокируется, и по результатам ставиться оценка. Если тест сдан за 5 минут, то тест останавливается и ставиться оценка. Программа ставит «3» если больше 50% ответов правильны, «4» если больше 70%, «5» если больше 90% и «2» если меньше 50%.

Так же предусмотрен вариант тренировки, если введенный пароль правилен (пароль: «пароль»). Во время тренировки правильные ответы помечены красным цветом.


2. Код программы


2.1 Текст программы. Часть 1

Unit1;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Menus, StdCtrls, Buttons, ExtCtrls;= class(TForm): TRadioGroup;: TMainMenu;: TBitBtn;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TGroupBox;: TLabel;: TLabel;: TLabel;: TBitBtn;: TBitBtn;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TTimer;N4Click(Sender: TObject);N8Click(Sender: TObject);N11Click(Sender: TObject);BitBtn4Click(Sender: TObject);Timer1Timer(Sender: TObject);zagruz();vopr();prov(a:integer);BitBtn1Click(Sender: TObject);protv();res();BitBtn2Click(Sender: TObject);N6Click(Sender: TObject);N1Click(Sender: TObject);


{ Private declarations }

{ Public declarations };=record:string;,o2,o3,o4:string;:integer;;: TForm1;:Ttime;:integer=0;:array of q;:array of integer;:integer;:integer=0;,incor:integer;:boolean=false;

, unit2;

{$R *.dfm}

TForm1.N4Click(Sender: TObject);;;

procedure TForm1.N8Click(Sender: TObject);.Showmodal;;

TForm1.N11Click(Sender: TObject);(sender).Checked:=true;.Caption:=TMenuItem(sender).Caption;TMenuItem(sender).Tag=1 then label8.Caption:='50';TMenuItem(sender).Tag=2 then label8.Caption:='60';TMenuItem(sender).Tag=3 then label8.Caption:='70';TMenuItem(sender).Tag=4 then label8.Caption:='80';TMenuItem(sender).Tag=5 then label8.Caption:='90';;TForm1.BitBtn4Click(Sender: TObject);.Caption:='0';.Caption:='0';

radiogroup1.Caption:='Подождите идет загрузка вопросов';

if tren=false then showmessage('У Вас 5 минут!'+#13+#13+'Удачи!!!');.Enabled:=false;;;.Caption:=s[vop[0]].ques;.Items.Strings[0]:=s[vop[0]].o1;.Items.strings[1]:=s[vop[0]].o2;.Items.strings[2]:=s[vop[0]].o3;.Items.strings[3]:=s[vop[0]].o4;tren=false then:=now;.Enabled:=true;:=0;.Enabled:=false;;tren=true then:=0;(RadioGroup1.Controls[s[vop[0]].pr-1]).font.color:=clred;.ItemIndex:=-1;;.Enabled:=true;;


.2 Текст программы. Часть 2

TForm1.Timer1Timer(Sender: TObject);.Caption:=FormatDateTime('nn:ss',v-now);(i);i>=300 then.Enabled:=false;.Enabled:=false;.Enabled:=true;.Enabled:=true;tren=false then res();:=false;.Enabled:=false;;;

Tform1.zagruz();:textfile;:string;(f,'base.glf');(f);:=0;not eof(f) do(s,i+1);(f,t);[i].ques:=t;(f,t);[i].o1:=t;(f,t);[i].o2:=t;(f,t);[i].o3:=t;(f,t);[i].o4:=t;(f,t);[i].pr:=strtoint(t);(i);;(f);:=0;;

procedure Tform1.vopr();c<=strtoint(label8.Caption) do(vop,c+1);;:=random(high(s)-1);(a);;;

Tform1.prov(a:integer);:integer;r:=0 to c-1 doa=vop[r] then exit;[c]:=a;(c);;

TForm1.BitBtn1Click(Sender: TObject);c>=high(vop)-1 thentren=false then protv();.Enabled:=false;.Enabled:=false;.Enabled:=true;.Enabled:=true;.Enabled:=false;tren=false then res();;:=false;;tren=true then(c);.Caption:=s[vop[c]].ques;.Items.Strings[0]:=s[vop[c]].o1;.Items.strings[1]:=s[vop[c]].o2;.Items.strings[2]:=s[vop[c]].o3;.Items.strings[3]:=s[vop[c]].o4;(RadioGroup1.Controls[s[vop[c]].pr-1]).font.color:=clred;s[vop[c]].pr<>s[vop[c-1]].pr then (RadioGroup1.Controls[s[vop[c-1]].pr-1]).font.color:=clblack;.ItemIndex:=-1;;


.3 Текст программы. Часть 3

tren=false then();.Caption:=s[vop[c]].ques;.Items.Strings[0]:=s[vop[c]].o1;.Items.strings[1]:=s[vop[c]].o2;.Items.strings[2]:=s[vop[c]].o3;.Items.strings[3]:=s[vop[c]].o4;;;Tform1.protv();radiogroup1.ItemIndex+1=s[vop[c]].pr then inc(cor) else inc(incor);.Caption:=inttostr(cor);.Caption:=inttostr(incor);(c);;Tform1.res();,proc:real;('Тест окончен');:=strtoint(label8.Caption);:=int(cor/(kol/100));proc<50 then label12.Caption:='2';proc>50 then label12.Caption:='3';proc>70 then label12.Caption:='4';proc>90 then label12.Caption:='5';;

TForm1.BitBtn2Click(Sender: TObject);;;TForm1.N6Click(Sender: TObject);.ShowModal;tren=true then bitbtn4.OnClick(self) else showmessage('Вы вели не'+'правильный пароль');;TForm1.N1Click(Sender: TObject);;.Unit2;


Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls, , messages;

= class(TForm): TLabel;: TEdit;: TButton;: TButton;OKBtnClick(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TPasswordDlg;

unit1;

{$R *.dfm}

TPasswordDlg.OKBtnClick(Sender: TObject);password.Text='пароль' then unit1.tren:=true else unit1.tren:=false;;.Unit3;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons, jpeg, ExtCtrls;= class(TForm): TImage;: TLabel;: TLabel;: TLabel;: TLabel;: TBitBtn;BitBtn1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm3;


{$R *.dfm}TForm3.BitBtn1Click(Sender: TObject);

begin;;.


Заключение


Условия выполнения программы: для работы программы необходимы: компьютер на базе процессора Pentium 100 и выше, 32 Mb RAM и больше, 500 Mb HDD и больше, ОС Windows 98 и выше.

Выполнение программы: для загрузки программы необходимо запустить файл «Экзаменатор.exe», находящийся в папке с программой, для завершения работы программы необходимо выбрать пункт «Файл -> Выход» главного меню, или использовать «горячие клавиши» «Alt+F4» ну стандартный метод закрытия приложения - щелкнуть по значку «X» (крестик) в правой части заголовка окна программы

Сообщения оператору: при выборе пункта «О программе» появляется сообщение с краткой информацией о программе и разработчике.


Глоссарий


№ п/пПонятие Определение1.Delphi императивный, структурированный, объектно-ориентированный язык программирования.2.Алгоритмточное предписание исполнителю совеpшить определенную последовательность действий для достижения поставленной цели за конечное число шагов.3.Блок-схемав программировании - графическое представление программы или алгоритма с использованием стандартных графических элементов (прямоугольников, ромбиков, трапеций и др.), обозначающих команды, действия, данные и т.п.4.Матрицадвумерный массив однотипных элементов. Положение элемента в матрицы определяется номером строки и номером столбца.5.Машинный языкязык программирования, элементами которого являются команды компьютера.6.Переменнаяв языках программирования - именованная часть памяти, в которую могут помещаться разные значения переменной. Причем в каждый момент времени переменная имеет единственное значение. В процессе выполнения программы значение переменной может изменяться. Тип переменных определяется типом данных, которые они представляют.7.Программапоследовательность машинных команд, предназначенная для достижения конкретного результата.8.Семантикав программировании - система правил истолкования отдельных языковых конструкций. Семантика определяет смысловое значение предложений алгоритмического языка.9.Язык высокого уровнясогласно ГОСТ 19781-90 - язык программирования, понятия и структура которого удобны для восприятия человеком. Языки высокого уровня отражают потребности программиста, но не возможности системы обработки данных.10.Тип данных характеристика набора данных, которая определяет: - диапазон возможных значений данных из набора; - допустимые операции, которые можно выполнять над этими значениями; - способ хранения этих значений в памяти.

Список использованных источников


1.« Алгоритмы: построение и анализ.» Кормен Т., Лейзерсон Ч., Ривест Р.2.« Основы конструирования программ и языки программирования.» Скопин И.Н.3.«Delphi 5.0. Разработка корпоративных приложений.» - Александровский А. Д. 4.«Алгоритмы + Структуры Данных = Программы.» Вирт Н.5.«Введение в разработку и анализ алгоритмов.» Гудман С.6.«Введение в разработку и анализ алгоритмов». Гудман С.7.«Дисциплина программирования.» Дейкстра Э.8.Delphi Russian Knowledge Base9.Справка Delphi10.Юнита «Алгоритмические языки и программирование»

Приложение


А1.


Основные данные о работе Версия шаблона2.1ФилиалНижегородский филиалВид работыКурсовая работаНазвание дисциплиныПрограммирование на ЯВУТемаРазработать прилож

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ