Online тестирование

Автор работы: Пользователь скрыл имя, 22 Декабря 2014 в 15:49, реферат

Описание работы

Разработать программу для тестирования студентов в интегрированной среде разработки Lazarus.
Требования к программе:
Для каждого вопроса должно быть предоставлено не более четырех возможных вариантов ответа;
Каждому ответу необходимо присвоить определенное кол-во баллов;

Содержание работы

ЗАДАНИЕ…….…………………………………….……………………….…3
СТРУКТУРА ПРОГРАММЫ…………………………...…………………….4
ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ…………………………………………...5
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ………………………………9
ПРИЛОЖЕНИЕ А - КОД ПРОГРАММЫ…………………………………..10

Файлы: 1 файл

РГР ВУМП.docx

— 2.12 Мб (Скачать файл)

РОСЖЕЛДОР

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ» (СГУПС)

 

Кафедра «Информационные технологии транспорта»

 

Расчетно-графическая работа

по дисциплине «Высокоуровневые методы программирования» на тему

«Online тестирование»

 

Выполнил:

 

Руководитель:

Студент гр. БИСТ-211

 

Доцент_____________М.М. Нартова

     

________А.В.Хлебус

   
     

____________________

 

_____________

(дата сдачи на проверку)

 

(дата проверки)

     

 

Краткая рецензия:

__________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

 

______________________

(запись о допуске  к защите)

 

_____________________________                       ________________________

(оценка по результатам защиты)  (подпись преподавателя)

 

 

 

 

 

 

Новосибирск, 2014 г.

 

СОДЕРЖАНИЕ

 

ЗАДАНИЕ…….…………………………………….……………………….…3

СТРУКТУРА ПРОГРАММЫ…………………………...…………………….4

ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ…………………………………………...5

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ………………………………9

ПРИЛОЖЕНИЕ А - КОД ПРОГРАММЫ…………………………………..10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗАДАНИЕ

 

Разработать программу для тестирования студентов в интегрированной среде разработки Lazarus.

Требования к программе:

  1. Для каждого вопроса должно быть предоставлено не более четырех возможных вариантов ответа;
  2. Каждому ответу необходимо присвоить определенное кол-во баллов;
  3. В программе должны использоваться различные компоненты;
  4. По окончанию теста необходимо предоставить оценку, которую заработал пользователь (оценка: «5», «4», «3», «2»).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СТРУКТУРА ПРОГРАММЫ

 

Программная среда:Lazarus

Приложение состоит из нескольких форм, которое содержит следующие процедуры:

FormCreate - создание формы;

Image1, Image2, Image3, Image4 – отображает графическое изображение;

Button1Click- выход;

Button2Click –  ответ;

Button3Click - завершить тест;

Radiobutton1, Radiobutton2, Radiobutton3, CheckBox1, CheckBox2, CheckBox3 – выбор ответа;

Label1 – вопрос в тесте;

Edit1.Text – ответ, данный пользователем;

Edit2.Text – результат за правильный ответ. 
ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ

 

Исходный вид программы:

 

 

Пользователь набрал 10 баллов:

 

 

Пользователь набрал 7-9 баллов:

 

 

 

Пользователь набрал 5-6 баллов:

 

 

Пользователь набрал 3-4 балла:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ

 

  1. Самоучитель по программированию на Free Pascal и Lazarus / Е.Р. Алексеев, О.В. Чеснокова, Т.В. Кучер. – 2012
  2. Основы программирования в среде Lazarus / К.Т. Мансуров – 2011.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРИЛОЖЕНИЕ А - КОД ПРОГРАММЫ

 

unit Unit1;

 

{$mode objfpc}{$H+}

interface

 

uses

  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus,

  ActnList, StdCtrls, ExtCtrls, Unit2, Unit3, Unit4;

 

type

  { TForm1 }

 

  TForm1 = class(TForm)

    Button1: TButton;

    Button2: TButton;

    Button3: TButton;

    CheckBox1: TCheckBox;

    CheckBox2: TCheckBox;

    CheckBox3: TCheckBox;

    Edit1: TEdit;

    Edit2: TEdit;

    Image1: TImage;

    Label1: TLabel;

    Label2: TLabel;

    MainMenu1: TMainMenu;

    MenuItem1: TMenuItem;

    MenuItem10: TMenuItem;

    MenuItem2: TMenuItem;

    MenuItem3: TMenuItem;

    MenuItem4: TMenuItem;

    MenuItem5: TMenuItem;

    MenuItem6: TMenuItem;

    MenuItem7: TMenuItem;

    MenuItem8: TMenuItem;

    MenuItem9: TMenuItem;

    RadioButton1: TRadioButton;

    RadioButton2: TRadioButton;

    RadioButton3: TRadioButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure FormCreate(Sender: TObject);

    procedure MenuItem10Click(Sender: TObject);

    procedure MenuItem1Click(Sender: TObject);

    procedure MenuItem2Click(Sender: TObject);

    procedure MenuItem3Click(Sender: TObject);

    procedure MenuItem4Click(Sender: TObject);

    procedure MenuItem5Click(Sender: TObject);

    procedure MenuItem6Click(Sender: TObject);

    procedure MenuItem7Click(Sender: TObject);

    procedure MenuItem8Click(Sender: TObject);

    procedure MenuItem9Click(Sender: TObject);

  private

    { private declarations }

  public

    { public declarations }

  end;

 

var

  Form1: TForm1;

 

implementation

type

Test1=record

end;

var

k:integer;

rez:integer;

n:integer;

stroka:string[255];

{$R *.lfm}

{ TForm1 }

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  Close;

end;

 

procedure TForm1.Button2Click(Sender: TObject);

begin

  case k of

  1: if radiobutton2.Checked then n:=n+1 else ShowMessage('Вы ответили не верно!');

  2: if radiobutton1.checked then n:=n+1 else ShowMessage('Вы ответили не верно!');

  3: if Edit1.Text= '255' then n:=n+1 else ShowMessage('Вы ответили не верно!');

  4: if radiobutton3.checked then n:=n+1 else ShowMessage('Вы ответили не верно!');

  5: if radiobutton3.checked then n:=n+1 else ShowMessage('Вы ответили не верно!');

  6: if Edit1.Text= 'нет' then n:=n+1 else ShowMessage('Вы ответили не верно!');

  7: if radiobutton1.checked then n:=n+1 else ShowMessage('Вы ответили не верно!');

  8: if CheckBox1.checked and CheckBox2.checked then n:=n+1 else ShowMessage('Вы ответили не верно!');

  9: if CheckBox1.checked and CheckBox3.checked then n:=n+1 else ShowMessage('Вы ответили не верно!');

  10: if Edit1.Text= '0' then n:=n+1 else ShowMessage('Вы ответили не верно!');

  end;

  Edit2.Text :=IntToStr(n);

end;

 

procedure TForm1.Button3Click(Sender: TObject);

begin

 if Edit2.Text='10' then form2.Label1.Caption:='Ваша оценка 5';

 if (Edit2.Text='7')or (Edit2.Text='8') or (Edit2.Text='9') then form2.Label1.Caption:='Ваша оценка 4';

 if (Edit2.Text='5') or (Edit2.Text='6') then form3.Label1.Caption:='Ваша оценка 3';

 if (Edit2.Text='3') or (Edit2.Text='4') then form4.Label1.Caption:='Вы не прошли тест!';

  if Edit2.Text='10' then form2.ShowModal;

 if (Edit2.Text='7')or (Edit2.Text='8') or (Edit2.Text='9') then form2.ShowModal;

 if (Edit2.Text='5') or (Edit2.Text='6') then form3.ShowModal;

 if (Edit2.Text='3') or (Edit2.Text='4') then form4.ShowModal;

end;

 

procedure TForm1.FormCreate(Sender: TObject);

begin

   k:=1;

edit1.Visible:=False;

radiobutton1.Visible:=True;

radiobutton2.Visible:=True;

radiobutton3.Visible:=True;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=25;

Label1.Caption:='1. Как называется группа файлов, которая хранится отдельной группой и имеет собственное имя?';

 radiobutton1.Caption:='Байт';

radiobutton2.Caption:='Каталог';

radiobutton3.Caption:='Дискета';

end;

 

procedure TForm1.MenuItem1Click(Sender: TObject);

begin

  k:=1;

edit1.Visible:=False;

radiobutton1.Visible:=True;

radiobutton2.Visible:=True;

radiobutton3.Visible:=True;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=25;

Label1.Caption:='1. Как называется группа файлов, которая хранится отдельной группой и имеет собственное имя?';

 radiobutton1.Caption:='Байт';

radiobutton2.Caption:='Каталог';

radiobutton3.Caption:='Дискета';

end;

 

procedure TForm1.MenuItem2Click(Sender: TObject);

begin

 k:=2;

edit1.Visible:=False;

radiobutton1.Visible:=True;

radiobutton2.Visible:=True;

radiobutton3.Visible:=True;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=72;

Label1.Caption:='2. Выберите правильное имя файла anketa с расширением txt';

 radiobutton1.Caption:='Anketa. txt';

radiobutton2.Caption:='Anketa. txt.';

radiobutton3.Caption:='Anketa/txt';

end;

 

procedure TForm1.MenuItem3Click(Sender: TObject);

begin

 k:=3;

 rez:=0;

edit1.Visible:=True;

radiobutton1.Visible:=False;

radiobutton2.Visible:=False;

radiobutton3.Visible:=False;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=35;

Edit1.Left:=104;

Edit1.Top:=48;

Edit1.Text:='';

Label1.Caption:='3. Какое наибольшее количество символов имеет имя файла или каталога в Windows?';

 stroka:=edit1.text;

Edit1.Text:=IntToStr(rez);

end;

 

procedure TForm1.MenuItem4Click(Sender: TObject);

begin

 k:=4;

edit1.Visible:=False;

radiobutton1.Visible:=True;

radiobutton2.Visible:=True;

radiobutton3.Visible:=True;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=72;

Label1.Caption:='4. Какое расширение у исполняемых файлов?';

 radiobutton1.Caption:='exe, doс';

radiobutton2.Caption:='bak, bat';

radiobutton3.Caption:='exe, com, bat';

end;

 

procedure TForm1.MenuItem5Click(Sender: TObject);

begin

  k:=5;

  edit1.Visible:=False;

radiobutton1.Visible:=True;

radiobutton2.Visible:=True;

radiobutton3.Visible:=True;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=24;

Label1.Caption:='5. Подкаталог SSS входит в каталог YYY. Как называется каталог YYY относительно каталога SSS?';

 radiobutton1.Caption:='дочерний';

radiobutton2.Caption:='корневой';

radiobutton3.Caption:='родительский';

end;

 

procedure TForm1.MenuItem6Click(Sender: TObject);

begin

  k:=6;

 rez:=0;

edit1.Visible:=True;

radiobutton1.Visible:=False;

radiobutton2.Visible:=False;

radiobutton3.Visible:=False;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=40;

Edit1.Left:=104;

Edit1.Top:=48;

Edit1.Text:='';

Label1.Caption:='6. Может ли в одном каталоге быть два файла с одинаковыми именами?';

 stroka:=edit1.text;

Edit1.Text:=IntToStr(rez);

end;

 

procedure TForm1.MenuItem7Click(Sender: TObject);

begin

  k:=7;

  edit1.Visible:=False;

radiobutton1.Visible:=True;

radiobutton2.Visible:=True;

radiobutton3.Visible:=True;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=72;

Label1.Caption:='7. Что такое кластер на магнитном диске?';

 radiobutton1.Caption:='единица дискового пространства';

 radiobutton2.Caption:='конверт для диска';

radiobutton3.Caption:='виртуальный диск';

end;

 

procedure TForm1.MenuItem8Click(Sender: TObject);

begin

    k:=8;

edit1.Visible:=False;

radiobutton1.Visible:=False;

radiobutton2.Visible:=False;

radiobutton3.Visible:=False;

CheckBox1.Visible:=True;

CheckBox2.Visible:=True;

CheckBox3.Visible:=True;

Label1.Left:=80;

CheckBox1.Left:=120;

CheckBox2.Left:=120;

CheckBox3.Left:=120;

Label1.Caption:='8. Что содержит 0-я дорожка каждой дискеты?';

 CheckBox1.Caption:='корневой каталог';

 CheckBox2.Caption:='FАТ-таблицу';

 CheckBox3.Caption:='файлы';

end;

 

procedure TForm1.MenuItem9Click(Sender: TObject);

begin

    k:=9;

edit1.Visible:=False;

radiobutton1.Visible:=False;

radiobutton2.Visible:=False;

radiobutton3.Visible:=False;

CheckBox1.Visible:=True;

CheckBox2.Visible:=True;

CheckBox3.Visible:=True;

Label1.Left:=25;

CheckBox1.Left:=120;

CheckBox2.Left:=120;

CheckBox3.Left:=120;

Label1.Caption:='9. На дискете имеются испорченные сектора. Что делает система, чтобы предотвратить их использование?';

 CheckBox1.Caption:='ничего не делает';

 CheckBox2.Caption:='использует, но осторожно';

 CheckBox3.Caption:='отмечает их как испорченные';

end;

 

procedure TForm1.MenuItem10Click(Sender: TObject);

begin

   k:=10;

  rez:=0;

edit1.Visible:=True;

radiobutton1.Visible:=False;

radiobutton2.Visible:=False;

radiobutton3.Visible:=False;

CheckBox1.Visible:=False;

CheckBox2.Visible:=False;

CheckBox3.Visible:=False;

Label1.Left:=80;

Edit1.Left:=104;

Edit1.Top:=48;

Edit1.Text:='';

Label1.Caption:='10. Какой номер имеет начальная дорожка?';

 stroka:=edit1.text;

Edit1.Text:=IntToStr(rez);

end;

end.

                         


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