Автор работы: Пользователь скрыл имя, 31 Марта 2013 в 17:19, реферат
Следуя дальше по ступеням интеллектуализации обучающих систем, можно заметить, как плавно механизмы контроля перетекают в механизмы анализа высказываний обучающегося. Отметим, что не следует путать их с простым контролем как простой оценки единичного события с интегральным оцениванием, являющимся результатом анализа и систематизации множества разнородных ответов данных в разное время. Не вдаваясь в теорию обучения, давайте рассмотрим простой пример.
Учебник дает ответы на конкретные вопросы, помогает решать конкретные задачи и позволяет контролировать себя, заглядывая на последнюю страничку и сверяя правильный ответ с полученным. В классических учебных заведениях для этого существует лектор, который заботливо проводит студента по коридору знаний, понимает, с чего начать, и по ответам студента, на основе собственного опыта, делает выводы об уровне знаний студента в целом (то есть дает ему интегральную оценку)[2].
Введение 3
1Виды средств обучения и их особенности 6
1.1 Классификация средств обучения 6
1.2 Архитектура обучающих систем 23
1.3 Анализ разработок обучающих программ. 27
2 Разработка обучающей программы 31
2.1 Постановка задачи 31
2.2 Описание разработки обучающей программы 31
2.3 Технические и программные требования 49
2.4 Тестирование программы 49
Заключение 53
Глоссарий 56
Список использованных источников 58
Список сокращений 61
end;
procedure TForm1.Image3DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
image3.Picture.LoadFromFile('
end;
procedure TForm1.Image4MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image4.Picture.LoadFromFile('
end;
procedure TForm1.Image4MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image4.Picture.LoadFromFile('
end;
procedure TForm1.Image5MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image5.Picture.LoadFromFile('
end;
procedure TForm1.Image5MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image5.Picture.LoadFromFile('
end;
procedure TForm1.Image6MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image6.Picture.LoadFromFile('
end;
procedure TForm1.Image6MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image6.Picture.LoadFromFile('
end;
procedure TForm1.Image7MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image7.Picture.LoadFromFile('
end;
procedure TForm1.Image7MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image7.Picture.LoadFromFile('
end;
procedure TForm1.Image3Click(Sender: TObject);
begin
form2.showModal;
end;
procedure TForm1.Image4Click(Sender: TObject);
begin
form3.showmodal;
end;
procedure TForm1.Image5Click(Sender: TObject);
begin
form4.RichEdit1.Lines.
form4.ShowModal;
end;
procedure TForm1.Image6Click(Sender: TObject);
begin
ShellExecute(Handle, 'open', 'data\help\Справка.chm', nil, nil, SW_RESTORE);
end;
end.
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, Printers, ExtCtrls;
type
TForm2 = class(TForm)
RichEdit1: TRichEdit;
ComboBox1: TComboBox;
Image1: TImage;
Image2: TImage;
Image3: TImage;
PrintDialog1: TPrintDialog;
Label1: TLabel;
procedure BitBtn1Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure Image2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image2Click(Sender: TObject);
procedure Image3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.BitBtn1Click(Sender: TObject);
begin
close;
end;
procedure TForm2.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.ItemIndex=0 then
begin
RichEdit1.Lines.Clear;
RichEdit1.Lines.LoadFromFile('
end;
if ComboBox1.ItemIndex=1 then
begin
RichEdit1.Lines.Clear;
RichEdit1.Lines.LoadFromFile('
end;
if ComboBox1.ItemIndex=2 then
begin
RichEdit1.Lines.Clear;
RichEdit1.Lines.LoadFromFile('
end;
if ComboBox1.ItemIndex=3 then
begin
RichEdit1.Lines.Clear;
RichEdit1.Lines.LoadFromFile('
end;
if ComboBox1.ItemIndex=4 then
begin
RichEdit1.Lines.Clear;
RichEdit1.Lines.LoadFromFile('
end;
end;
procedure TForm2.Image2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image2.Picture.LoadFromFile('
end;
procedure TForm2.Image2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image2.Picture.LoadFromFile('
end;
procedure TForm2.Image2Click(Sender: TObject);
begin
close;
end;
procedure TForm2.Image3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image3.Picture.LoadFromFile('
end;
procedure TForm2.Image3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image3.Picture.LoadFromFile('
end;
procedure TForm2.Image3Click(Sender: TObject);
var
F: textFile;
N: integer;
begin
If PrintDialog1.Execute then
Begin
AssignPrn(F);//связываем текстовый файл с принтером
Rewrite(F);
For N:=0 to RichEdit1.Lines.Count-1 do
Writeln(F, RichEdit1.Lines[N]); //печать строки RichEdit
CloseFile(F);
end;
end;
end.
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, jpeg, ComCtrls;
const
put_k_data_base='data\otchet\
rasshirenie_file_data_base='.
type
TForm3 = class(TForm)
Panel2: TPanel;
Panel3: TPanel;
Edit1: TEdit;
Edit2: TEdit;
Label4: TLabel;
Label5: TLabel;
Image1: TImage;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Label3: TLabel;
Label2: TLabel;
Image6: TImage;
Image7: TImage;
Memo1: TMemo;
RadioButton1: TRadioButton;
RadioButton3: TRadioButton;
RadioButton2: TRadioButton;
procedure FormShow(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure zapis_v_data_base;
procedure Image3Click(Sender: TObject);
procedure Image3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image4Click(Sender: TObject);
procedure Image4MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image4MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image7Click(Sender: TObject);
procedure Image7MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image7MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
vvedenie_imeni:boolean;
end;
var
Form3: TForm3;
f: TextFile;
// файл теста (вопросы и
nq: integer; // количество вопросов в тесте
right: integer; // количество правильных ответов
level: array[1..4] of integer; // критерии оценок
mes: array[1..4] of string; // комментарии
buf: string;
implementation
uses Unit1, Unit4;
{$R *.dfm}
function NextQw : boolean;
begin
if not EOF(f) then
begin
// прочитать и вывести вопрос
Readln(f,buf);
form3.Memo1.Lines.Clear;
form3.Memo1.Lines.Add(buf);
// прочитать и вывести варианты ответов
// 1-й вариант
Readln(f,buf); // прочитать 1-й вариант ответа
form3.RadioButton1.Caption := buf;
Readln(f,buf); // оценка за выбор этого ответа (1 - правильно, 0 - нет)
form3.RadioButton1.Tag := StrToInt(buf);
// 2-й вариант
Readln(f,buf);
form3.RadioButton2.Caption := buf;
Readln(f,buf);
form3.RadioButton2.Tag := StrToInt(buf);
// 3-й вариант
Readln(f,buf);
form3.RadioButton3.Caption := buf;
Readln(f,buf);
form3.RadioButton3.Tag := StrToInt(buf);
// счетчик общего количества вопросов
nq:= nq + 1;
// кнопка "Дальше" не доступна,
// пока не выбран один из вариантов ответа
form3.image7.Enabled := False;
// ни одна из радиокнопок не выбрана
form3.RadioButton1.Checked := False;
form3.RadioButton2.Checked := False;
form3.RadioButton3.Checked := False;
NextQw := TRUE;
end
else NextQw := FALSE;
end;
procedure TForm3.FormShow(Sender: TObject);
var
i: integer;
fname : string;
begin
fname := 'data\test\test.dll';
AssignFile(f,fname);
Reset(f);
// прочитать название теста - первая строка файла
Readln(f,buf);
{Form1.Caption := buf;}
right := 0; // правильных ответов
nq := 0; // всего вопросов
NextQW; // прочитать и вывести первый вопрос}
edit1.Clear;
edit2.Clear;
image3.Enabled:=true;
edit1.Enabled:=true;
edit2.Enabled:=true;
panel2.Visible:=false;
end;
procedure TForm3.RadioButton1Click(
begin
image7.Enabled := True;
end;
procedure TForm3.zapis_v_data_base;
var file_db:textfile;
buf: string;
i: integer;
begin
if fileexists(put_k_data_base+
begin
assignfile(file_db,put_k_data_
append(file_db);
end
else
begin
assignfile(file_db,put_k_data_
rewrite(file_db);
end;
writeln(file_db,'
Имя........................'+
writeln(file_db,' Фамилия....................'+
writeln(file_db,' Дата.......................'+
writeln(file_db,' Время......................'+
writeln(file_db,' Результат..................'+
writeln(file_db,' Оценка.....................'+
writeln(file_db,' ');
closefile(file_db);
end;
procedure TForm3.Image3Click(Sender: TObject);
begin
if not((Edit1.Text='') or(Edit2.Text=''))then
begin
vvedenie_imeni:=true;
image3.Enabled:=false;
edit1.Enabled:=false;
edit2.Enabled:=false;
form3.Panel2.Visible:=true;
end
else
if messagedlg('Вы не
ввели свои данные в поле "Имя"
и "Фамилия"',mterror,[mbretry,
begin
vvedenie_imeni:=false;
Close;
end
else
begin
end;
end;
procedure TForm3.Image3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image3.Picture.LoadFromFile('
end;
procedure TForm3.Image3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image3.Picture.LoadFromFile('
end;
procedure TForm3.Image4Click(Sender: TObject);
begin
panel2.Visible:=false;
edit1.Enabled:=true;
edit2.Enabled:=true;
form3.close;
end;
procedure TForm3.Image4MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image4.Picture.LoadFromFile('
end;
procedure TForm3.Image4MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image4.Picture.LoadFromFile('
end;
procedure TForm3.Image7Click(Sender: TObject);
var
buf: string;
i: integer;
begin
// добавим оценку за выбранный вариант ответа
// оценка находится в свойстве Button.Tag
// Button.Tag = 1 - ответ правильный, 0 - нет
if RadioButton1.Checked then right := right + RadioButton1.Tag;
if RadioButton2.Checked then right := right + RadioButton2.Tag;
if RadioButton3.Checked then right := right + RadioButton3.Tag;
// вывести следующий вопрос
// NextQW читает и выводит вопрос
// NextQw = FALSE если в файле теста
// вопросов больше нет
if not NextQW then
begin
{right; // правильных ответов
nq; // всего вопросов
23-25 правильных =5
20-23 правильных = 4}
messagedlg('Тест завершен',
image7.Enabled:=false;
if right15 then label3.Caption:='3';
if right>20 then label3.Caption:='4';
if right>23 then label3.Caption:='5';
label2.Caption:=intToStr(
form3.zapis_v_data_base;
form3.Memo1.Lines.Clear;
end;
exit;
end;
procedure TForm3.Image7MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image7.Picture.LoadFromFile('
end;
procedure TForm3.Image7MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
image7.Picture.LoadFromFile('
end;
end.
unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Menus, Printers, ComCtrls;
type
TForm4 = class(TForm)
RichEdit1: TRichEdit;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
PrintDialog1: TPrintDialog;
procedure N2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
{$R *.dfm}
procedure TForm4.N2Click(Sender: TObject);
begin
close;
end;
procedure TForm4.N1Click(Sender: TObject);
var
F: textFile;
N: integer;
begin
If PrintDialog1.Execute then
Begin
AssignPrn(F);//связываем текстовый файл с принтером
Rewrite(F);
For N:=0 to RichEdit1.Lines.Count-1 do
Writeln(F, RichEdit1.Lines[N]); //печать строки RichEdit