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

Выбор состава технических и программных средств для создания данного приложения "Экзаменатор", использование среды разработки Borland Delphi. Основные компоненты и спецификация программы. Используемые технические средства, описание и запуск программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 18.07.2012
Размер файла 540,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

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

Версия шаблона

2.1

Филиал

Нижегородский филиал

Вид работы

Курсовая работа

Название дисциплины

Программирование на ЯВУ

Тема

Разработать приложение «Помощник экзаменатора»

Фамилия студента

Максимов

Имя студента

Андрей

Отчество студента

Владимирович

№ контракта

15000080601007

Содержание

Введение

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

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

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

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

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

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

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

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

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

Заключение

Глоссарий

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

Приложение А

Введение

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

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

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

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

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

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

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

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

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

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

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

HDD 500 Гб

ОЗУ DDR2 3 Гб

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

ОС Windows 7

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

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

HDD 500 Мб (и выше)

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

ОС Windows 98 или выше

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

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

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

Рис.1

1: Компонент Form1

Свойства

Caption

Экзаменатор

Position

poScreenCenter

Border Style

bsSingle

2: Компонент RadioGroup1

Свойства

Caption

Вопросы

Items

1.Ответ1, 2.Ответ2, 3.Ответ3, 4.Ответ4

3: Компонент BitBtn4

Свойства

Caption

Начать

ModalResult

mrAll

События

OnClick

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

4: Компонент BitBtn1

Свойства

Caption

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

ModalResult

mrOk

События

OnClick

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

5: Компонент MainMenu1

Свойства

Items

Фаил(N1)

Заново(N2)

-------------(N3)

Выход(N4)

Настройки(N5)

Тренировка(N6)

Уровень сложности(N7)

О программе(N8)

1(N11)

2(N21)

3(N31)

4(N41)

5(N51)

События

N4Click

Выход из приложения

N8Click

Вывод информации о программе

N11Click

Выбор уровня, используется для всех уровнях

N6Click

Ввод пароля, запускает трен. режим

6: Компонент BitBtn2

Свойства

Caption

Закончить

ModalResult

mrIgnore

События

OnClick

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

7: Компонент RadioGroup2

Свойства

Caption

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

8: Компонент Timer1

События

OnTimer

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

9: Компонент Timer1

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

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

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

Наименование

Обозначение

Примечание

Project1.dpr

Файл проекта

Связывает между собой все файлы, из которых состоит проект

Project1.res

Файл ресурсов

Содержит пиктограммы, графические изображения

Unit1.pas

Файл программного модуля Формы 1

Определяет функциональность формы №1

Unit1.dfm

Файл формы 1

Содержит список всех компонентов, включенных в форму 1

Unit2.pas

Файл программного модуля Формы 2

Определяет функциональность формы №2

Unit2.dfm

Файл формы 2

Содержит список всех компонентов, включенных в форму 2

Unit3.pas

Файл программного модуля Формы 3

Определяет функциональность формы №3

Unit3.dfm

Файл формы 3

Содержит список всех компонентов, включенных в форму 3

Base.glf

Фаил с вопросами

Файл, содержащий список вопросов

Табл.1

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

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Menus, StdCtrls, Buttons, ExtCtrls;

type

TForm1 = class(TForm)

RadioGroup1: TRadioGroup;

MainMenu1: TMainMenu;

BitBtn1: TBitBtn;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N11: TMenuItem;

N21: TMenuItem;

N31: TMenuItem;

N41: TMenuItem;

N51: TMenuItem;

N8: TMenuItem;

GroupBox1: TGroupBox;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

BitBtn2: TBitBtn;

BitBtn4: TBitBtn;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

Label11: TLabel;

Label12: TLabel;

Timer1: TTimer;

procedure N4Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure zagruz();

procedure vopr();

procedure prov(a:integer);

procedure BitBtn1Click(Sender: TObject);

procedure protv();

procedure res();

procedure BitBtn2Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure N1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

type

q=record

ques:string;

o1,o2,o3,o4:string;

pr:integer;

end;

var

Form1: TForm1;

v:Ttime;

i:integer=0;

s:array of q;

vop:array of integer;

a:integer;

c:integer=0;

cor,incor:integer;

tren:boolean=false;

implementation

uses

unit3, unit2;

{$R *.dfm}

procedure TForm1.N4Click(Sender: TObject);

begin

Close;

end;

procedure TForm1.N8Click(Sender: TObject);

begin

form3.Showmodal;

end;

procedure TForm1.N11Click(Sender: TObject);

begin

TMenuItem(sender).Checked:=true;

label4.Caption:=TMenuItem(sender).Caption;

if TMenuItem(sender).Tag=1 then label8.Caption:='50';

if TMenuItem(sender).Tag=2 then label8.Caption:='60';

if TMenuItem(sender).Tag=3 then label8.Caption:='70';

if TMenuItem(sender).Tag=4 then label8.Caption:='80';

if TMenuItem(sender).Tag=5 then label8.Caption:='90';

end;

procedure TForm1.BitBtn4Click(Sender: TObject);

begin

label10.Caption:='0';

label11.Caption:='0';

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

if tren=false then showmessage('У Вас 5 минут!'+#13+#13+'Удачи!!!');

n5.Enabled:=false;

zagruz;

vopr;

radiogroup1.Caption:=s[vop[0]].ques;

radiogroup1.Items.Strings[0]:=s[vop[0]].o1;

radiogroup1.Items.strings[1]:=s[vop[0]].o2;

radiogroup1.Items.strings[2]:=s[vop[0]].o3;

radiogroup1.Items.strings[3]:=s[vop[0]].o4;

if tren=false then

begin

v:=now;

timer1.Enabled:=true;

c:=0;

bitbtn4.Enabled:=false;

end;

if tren=true then

begin

c:=0;

TRadioButton(RadioGroup1.Controls[s[vop[0]].pr-1]).font.color:=clred;

radiogroup1.ItemIndex:=-1;

end;

bitbtn1.Enabled:=true;

end;

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

procedure TForm1.Timer1Timer(Sender: TObject);

begin

label9.Caption:=FormatDateTime('nn:ss',v-now);

inc(i);

if i>=300 then

begin

bitbtn1.Enabled:=false;

bitbtn2.Enabled:=false;

bitbtn4.Enabled:=true;

n5.Enabled:=true;

if tren=false then res();

tren:=false;

timer1.Enabled:=false;

end;

end;

procedure Tform1.zagruz();

var

f:textfile;

t:string;

begin

assignfile(f,'base.glf');

reset(f);

i:=0;

while not eof(f) do

begin

setlength(s,i+1);

readln(f,t);

s[i].ques:=t;

readln(f,t);

s[i].o1:=t;

readln(f,t);

s[i].o2:=t;

readln(f,t);

s[i].o3:=t;

readln(f,t);

s[i].o4:=t;

readln(f,t);

s[i].pr:=strtoint(t);

inc(i);

end;

closefile(f);

i:=0;

end;

procedure Tform1.vopr();

begin

while c<=strtoint(label8.Caption) do

begin

setlength(vop,c+1);

randomize;

a:=random(high(s)-1);

prov(a);

end;

end;

Procedure Tform1.prov(a:integer);

var

r:integer;

begin

for r:=0 to c-1 do

if a=vop[r] then exit;

vop[c]:=a;

inc(c);

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

if c>=high(vop)-1 then

begin

if tren=false then protv();

bitbtn1.Enabled:=false;

bitbtn2.Enabled:=false;

bitbtn4.Enabled:=true;

n5.Enabled:=true;

timer1.Enabled:=false;

if tren=false then res();

exit;

tren:=false;

end;

if tren=true then

begin

inc(c);

Radiogroup1.Caption:=s[vop[c]].ques;

radiogroup1.Items.Strings[0]:=s[vop[c]].o1;

radiogroup1.Items.strings[1]:=s[vop[c]].o2;

radiogroup1.Items.strings[2]:=s[vop[c]].o3;

radiogroup1.Items.strings[3]:=s[vop[c]].o4;

TRadioButton(RadioGroup1.Controls[s[vop[c]].pr-1]).font.color:=clred;

if s[vop[c]].pr<>s[vop[c-1]].pr then

TRadioButton(RadioGroup1.Controls[s[vop[c-1]].pr-1]).font.color:=clblack;

radiogroup1.ItemIndex:=-1;

end;

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

if tren=false then

begin

protv();

Radiogroup1.Caption:=s[vop[c]].ques;

radiogroup1.Items.Strings[0]:=s[vop[c]].o1;

radiogroup1.Items.strings[1]:=s[vop[c]].o2;

radiogroup1.Items.strings[2]:=s[vop[c]].o3;

radiogroup1.Items.strings[3]:=s[vop[c]].o4;

end;

end;

procedure Tform1.protv();

begin

if radiogroup1.ItemIndex+1=s[vop[c]].pr then inc(cor) else inc(incor);

label10.Caption:=inttostr(cor);

label11.Caption:=inttostr(incor);

inc(c);

end;

procedure Tform1.res();

var

kol,proc:real;

begin

showmessage('Тест окончен');

kol:=strtoint(label8.Caption);

proc:=int(cor/(kol/100));

if proc<50 then label12.Caption:='2';

if proc>50 then label12.Caption:='3';

if proc>70 then label12.Caption:='4';

if proc>90 then label12.Caption:='5';

end;

procedure TForm1.BitBtn2Click(Sender: TObject);

begin

close;

end;

procedure TForm1.N6Click(Sender: TObject);

begin

PasswordDlg.ShowModal;

if tren=true then bitbtn4.OnClick(self) else showmessage('Вы вели не'+'правильный пароль');

end;

procedure TForm1.N1Click(Sender: TObject);

begin

end;

end.

unit Unit2;

interface

uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,

Buttons, messages;

type

TPasswordDlg = class(TForm)

Label1: TLabel;

Password: TEdit;

OKBtn: TButton;

CancelBtn: TButton;

procedure OKBtnClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

PasswordDlg: TPasswordDlg;

implementation

uses unit1;

{$R *.dfm}

procedure TPasswordDlg.OKBtnClick(Sender: TObject);

begin

if password.Text='пароль' then unit1.tren:=true else unit1.tren:=false;

end;

end.

unit Unit3;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Buttons, jpeg, ExtCtrls;

type

TForm3 = class(TForm)

Image1: TImage;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

BitBtn1: TBitBtn;

procedure BitBtn1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.BitBtn1Click(Sender: TObject);

begin

Close;

end;

end.

Заключение

Условия выполнения программы: для работы программы необходимы: компьютер на базе процессора 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 Base

9.

Справка Delphi

10.

Юнита «Алгоритмические языки и программирование»

Приложение

А

1. Размещено на www.allbest.ru


Подобные документы

  • Разработка в среде Delphi приложения "Записная книжка" для ввода и корректировки информации, поиска данных. Выбор состава технических и программных средств. Текст программы, ее описание и тестирование. Основные условия программы, требования к компьютеру.

    курсовая работа [565,7 K], добавлен 08.12.2011

  • Технические характеристики игрового приложения для операционной системы Microsoft Windows. Обоснование выбора состава технических и программных средств. Характеристика процесса разработки программы "Угадайка", ее спецификация, описание и тестирование.

    курсовая работа [422,4 K], добавлен 10.06.2011

  • Разработка Windows-приложения, представляющего собой компьютерную игру "Кости". Организация входных и выходных данных. Минимальные требования. Выбор состава технических и программных средств. Спецификация программы, ее описание и внедрение, тестирование.

    курсовая работа [475,8 K], добавлен 18.07.2012

  • Разработка эскизного и технического проектов программы, ее назначение и область применения, технические характеристики. Организация входных и выходных данных, выбор состава технических и программных средств. Текст программы, ее описание и тестирование.

    курсовая работа [1,3 M], добавлен 15.11.2009

  • Разработка эскизного и технического проектов программы, ее назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка рабочего проекта, спецификация программы.

    курсовая работа [700,6 K], добавлен 26.01.2010

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

    отчет по практике [700,5 K], добавлен 24.11.2014

  • Разработка эскизного и технического проектов программы, приложения "Телефонный справочник". Организация входных и выходных данных. Выбор состава технических средств. Интегрированная среда разработки Delphi 7. Разработка рабочего проекта, внедрение.

    курсовая работа [427,4 K], добавлен 21.07.2012

  • Использование интерактивных средств обучения в младшей школе. Анализ необходимости внедрения современных компьютерных технологий в начальную школу. Разработка электронного экзаменатора по информатике средствами Visual Basic, описание созданной программы.

    дипломная работа [4,5 M], добавлен 19.12.2013

  • Разработка эскизного и технического проектов программы, ее назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка рабочего проекта, спецификация программы.

    курсовая работа [159,8 K], добавлен 26.01.2010

  • Анализ и пути совершенствования коммерческой деятельности предприятий розничной торговли. Обзор программных средств, используемых в торговле, их основные возможности. Проектирование и реализация приложения "Электронный помощник" для магазина "Ваш дом".

    дипломная работа [634,1 K], добавлен 12.07.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.