Тестирующая программа операционные системы

Автор работы: Пользователь скрыл имя, 05 Июня 2012 в 18:25, курсовая работа

Краткое описание

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

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

Содержание

Введение

Логическая структура:

 обоснование выбора среды разработки;

 обоснование выбора метода проектирования;

Аппаратные средства

Вызов проекта

1. Пояснительная записка

1.1 Постановка задачи

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

2. Практическая часть

2.1 Листинг программы с комментариями

2.2 Методика испытаний

3. Графическая часть

3.1 Структурная схема представления проекта

3.2 Руководство программиста

3.3 Руководство оператора

Заключение

Литература

Приложения (CD-диск)

Вложенные файлы: 1 файл

курсач.doc

— 184.50 Кб (Скачать файл)

 

 

2. Практическая часть

2.1 Листинг программы  с комментариями

Рассмотрим  листинг основных блоков и модулей  программы.

    Данный  проект содержит 3 формы, которые являются основой проектируемого приложения Delphi.

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

unit Unit1; 

interface 

uses

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

  Dialogs, Menus, StdCtrls, XPMan; 

type

  TForm1 = class(TForm)

    Button1: TButton;

    MainMenu1: TMainMenu;

    File1: TMenuItem;

    About1: TMenuItem;

    N1: TMenuItem;

    Edit1: TEdit;

    Edit2: TEdit;

    XPManifest1: TXPManifest;

    Label1: TLabel;

    Label2: TLabel;

    N2: TMenuItem;

    Button2: TButton;

    Label3: TLabel;

    Label4: TLabel;

    Edit3: TEdit;

    RadioButton1: TRadioButton;

    RadioButton2: TRadioButton;

    Label5: TLabel;

    Edit4: TEdit;

    procedure N2Click(Sender: TObject);

    procedure N1Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure FormShow(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form1: TForm1;

  f: TextFile;

  f_name,l_name,gr,d:string;

  p1,t1,qq,v,n:integer;

implementation 

uses Unit2, Unit3; 

{$R *.dfm} 

procedure TForm1.N2Click(Sender: TObject);

begin

form1.Visible:=false;

form2.showmodal;

form1.Visible:=true;

end; 

procedure TForm1.N1Click(Sender: TObject);

begin

close

end; 

procedure TForm1.Button1Click(Sender: TObject);

begin

qq:=1;

p1:=0;

if RadioButton1.Checked then

p1:=1;

if RadioButton2.Checked then

p1:=2;

if not(edit1.text='') and not(edit2.text='') and not(edit3.text='') and (p1<>0)

then begin

f_name:= Edit1.text;

l_name:= Edit2.text;

gr:=edit3.Text;

form3.button1.Caption:= 'Начать ';

form1.Visible:=false;

form3.ShowModal;

form1.Visible:=true;

end

else

Showmessage('Заполните все поля');

end; 

procedure TForm1.Button2Click(Sender: TObject);

begin

qq:=2;

p1:=0;

if RadioButton1.Checked then

p1:=1;

if RadioButton2.Checked then

p1:=2;

if not(edit1.text='') and not(edit2.text='') and not(edit3.text='') and (p1<>0)

then begin

f_name:= Edit1.text;

l_name:= Edit2.text;

gr:=edit3.Text;

form3.button1.Caption:= 'Начать';

form1.Visible:=false;

form3.ShowModal;

form1.Visible:=true;

end

else

Showmessage('Заполните все поля');

end; 

procedure TForm1.FormShow(Sender: TObject);

begin

if n<>0

then begin

edit4.text:=dateToStr(Date);

d:=edit4.text;

AssignFile(f,'.\ Результаты');

{$I-}

Append(f);

{$I+}

if IOResult<> 0

then Rewrite(f);

if p1=1

then

writeln(f, 'Учащийся ',f_name,' ',l_name, ' из группы ',gr)

else

writeln(f, 'Учащаяся ',f_name,' ',l_name, ' из группы ',gr);

if (p1=1) then

writeln(f, 'Получил оценку ',v,' выполнив ',v,' из ',n,' заданий');

if (p1=2) then

writeln(f, 'Получила оценку ',v,' выполнив ',v,' из ',n,' заданий');

if (qq=1) then

writeln(f, 'По теме PhotoShop');

if (qq=2) then

writeln(f, 'По теме CorelDraw');

writeln(f, d);

writeln(f, '');

CloseFile(f);

v:=0;

n:=0;

end;

end; 

end.

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

unit Unit2; 

interface 

uses

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

  Dialogs, ImgList, ExtCtrls, jpeg; 

type

  TForm2 = class(TForm)

    Image1: TImage;

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form2: TForm2; 

implementation 

{$R *.dfm} 

end.

   Третья  форма это сама форма тестирования. На этой форме пользователь выбирает правильный ответ и жмет Далее.

unit Unit3; 

interface 

uses

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

  Dialogs, ExtCtrls, StdCtrls; 

type

  TForm3 = class(TForm)

    RadioButton1: TRadioButton;

    RadioButton2: TRadioButton;

    RadioButton3: TRadioButton;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Button1: TButton;

    RadioButton4: TRadioButton;

    Label5: TLabel;

    procedure RadioButton2Click(Sender: TObject);

    procedure RadioButton1Click(Sender: TObject);

    procedure RadioButton3Click(Sender: TObject);

    procedure RadioButton4Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure FormActivate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form3: TForm3;

  f: TextFile;

  tmp:string; 

implementation

uses Unit1; 

{$R *.dfm} 

function NextQz : boolean;

begin 

if not eof(f)

then begin

form3.button1.caption:='Дальше';

Readln (f, tmp);

form3.label5.caption:=tmp; 

Readln (f, tmp);

form3.label1.caption:=tmp;

Readln (f, tmp);

form3.RadioButton1.Tag:=strtoint(tmp); 

Readln (f, tmp);

form3.label2.caption:=tmp;

Readln (f, tmp);

form3.RadioButton2.Tag:=strtoint(tmp); 

Readln (f, tmp);

form3.label3.caption:=tmp;

Readln (f, tmp);

form3.RadioButton3.Tag:=strtoint(tmp); 

Readln (f, tmp);

form3.label4.caption:=tmp;

Readln (f, tmp);

form3.RadioButton4.Tag:=strtoint(tmp);

n:=n+1; 

NextQz := TRUE;

end

else NextQz := FALSE;

end; 

procedure TForm3.Button1Click(Sender: TObject);

begin

label5.WordWrap:=true;

RadioButton1.Visible := true;

RadioButton2.Visible := true;

RadioButton3.Visible := true;

RadioButton4.Visible := true;

Label1.Visible := true;

Label2.Visible := true;

Label3.Visible := true;

Label4.Visible := true; 

if Button1.Caption = 'Завершить'

then begin 

RadioButton1.tag:=0;

RadioButton2.tag:=0;

RadioButton3.tag:=0;

RadioButton4.tag:=0;

form3.Close;

end; 

if RadioButton1.Checked then

v:=v + RadioButton1.Tag;

if RadioButton2.Checked then

v:=v + RadioButton2.Tag;

if RadioButton3.Checked then

v:=v + RadioButton3.Tag;

if RadioButton4.Checked then

v:=v + RadioButton4.Tag; 

if not NextQz then begin

label5.WordWrap:=false;

button1.Caption:='Завершить';

RadioButton1.Visible := False;

RadioButton2.Visible := False;

RadioButton3.Visible := False;

RadioButton4.Visible := False;

Label1.Visible := False;

Label2.Visible := False;

Label3.Visible := False;

Label4.Visible := False;

tmp:= 'Тестирование завершено. ' + #13 + #13 +

             'Задано вопросов: ' + IntToStr(n) + #13 + #13 +

             'Правильных ответов: ' + IntToStr(v);

             Label5.AutoSize := TRUE;

      Label5.Caption := tmp;

      end;

end; 

procedure TForm3.RadioButton1Click(Sender: TObject);

begin

Button1.Enabled := True;

end;

procedure TForm3.RadioButton2Click(Sender: TObject);

begin

Button1.Enabled := True;

end;

procedure TForm3.RadioButton3Click(Sender: TObject);

begin

Button1.Enabled := True;

end;

procedure TForm3.RadioButton4Click(Sender: TObject);

begin

Button1.Enabled := True;

end; 

procedure TForm3.Formactivate(Sender: TObject);

begin

RadioButton1.Visible := False;

RadioButton2.Visible := False;

RadioButton3.Visible := False;

RadioButton4.Visible := False;

Label1.Visible := False;

Label2.Visible := False;

Label3.Visible := False;

Label4.Visible := False; 

if qq=1

then begin

label5.caption:='Сейчас будет проведен тест'+ #13 + #13 +

'По теме PhotoShop состоящий из 10 вопросов,'+ #13 + #13 +

'для продолжения нажмите <Начать>';

AssignFile(f, '.\1.txt');

Reset(f);

readln(f, tmp);

form3.Caption:=tmp;

Информация о работе Тестирующая программа операционные системы