Помощь в написании студенческих работ
Антистрессовый сервис

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

Дипломная Купить готовую Узнать стоимостьмоей работы

Затем необходимо определить поле либо «Организация» либо «группа» Для осуществления выборки данных соответсвующих объекту «школа 1», т.к. школа 1 это организация значит выберим «Организация». Для последующей работы необходимо выбрать при помощи мыши (или создать для анализа) в левой панели дерева конкретный информационный объект, выделив его мышью например «Школа 1» (рис.Б.10). Для обработки… Читать ещё >

Разработка програмного обеспечения для анализа результатов психологического тестирования (реферат, курсовая, диплом, контрольная)

Содержание

  • 1. ХАРАКТЕРИСТИКА КОМПЛЕКСА ЗАДАЧ ОЦЕНКИ РЕЗУЛЬТАТОВ ПСИХОЛОГИЧЕСКОГО ТЕСТИРОВАНИЯ, ЗАДАЧИ И ОБОСНОВАНИЕ НЕОБХОДИМОСТИ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
    • 1. 1. Задача анализа результатов психологического тстирования
    • 1. 2. Анализ существующих разработок
    • 1. 3. Разработка технико-экономического описания и технического задания
  • 2. ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АНАЛИЗА РЕЗУЛЬТАТОВ ПСИХОЛОГИЧЕСКОГО ТЕСТИРОВАНИЯ
    • 2. 1. Входные и выходные документы
    • 2. 2. Состав проекта и описание программных модулей
    • 2. 3. Проектирование пользовательского интерфейса
  • 3. ЭКОНОМИЧЕСКАЯ ЭФФЕКТИВНОСТЬ ПРОЕКТИРУЕМОЙ СИСТЕМЫ
    • 3. 1. Целесообразность разработки
    • 3. 2. SWOT-анализ разработки
    • 3. 3. Калькуляция себестоимости разработки
  • 4. БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ ОСОБЕННОСТИ ОРГАНИЗАЦИИ РАБОЧЕГО МЕСТА РАЗРАБОТЧИКА НА ОСНОВЕ ИНЖЕНЕРНОЙ ПСИХОЛОГИ
    • 4. 1. Анализ условий труда разработчика
    • 4. 2. Проектирование оптимального рабочего места разработчика
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

ПРИЛОЖЕНИЕ, А ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА РАЗРАБОТКУ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ А.1 Общие сведения А.2 Назначение и цель создания системы А.4 Требования к системе А.5 Состав и работ по созданию системы А.6 Порядок контроля и приемки системы А.7 Требования к составу и содержанию работ по подготовке и вводу системы в действие А.8 Требования к документированию А.9 Принятые сокращения

ПРИЛОЖЕНИЕ Б ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ Б.1 Назначение системы Б.2 Общие сведения Б.3 Описание работы пользователя с системой Б.3.1 Запуск системы Б.3.2 Главное меню Б.3.4 Тестирование Б.3.5 Редактирование информационных объектов Б.3.6 Просмотр данных тестирования Б.3.7 Обработка результатов тестирования Б.3.8 Пункт «Диаграмма»

3.8 Выход из системы

ПРИЛОЖЕНИЕ В ТЕКСТ ПРОГРАММЫ ГЛАВНОГО МОДУЛЯ

Б.2 Общие сведения Система представляет собой программный проект, разработанный в среде Borland Development Studio 2006.

Особых требований к операционной системе, набору необходимого программного обеспечения рабочего места психолога не предъявляется.

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

Администратор имеет полный доступ к информации, может просматривать и модифицировать информацию непосредственно в таблицах БД, не используя интерфейс информационной системы, может добавлять и удалять пользователей.

Б.3 Описание работы пользователя с системой Б.

3.1 Запуск системы

Для запуска системы необходимо запустить выполняемый файл stat.exe. Для этого может быть использован стандартный диалог Windows XP.

После запуска системы появляется главная форма приложения (рисунок Б.1) и система переходит в режим ожидания последующих действий пользователя.

Рисунок Б.1 — Главная форма приложения

Б.

3.2 Главное меню

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

Главное меню приложения содержит следующие альтернативы «Тест», «Редактор», «Обработка результатов», «Выход».

Пункт меню «Тест» предназначен для запуска формы тестирования (рис. Б.2).

Рисунок Б.2 — Пункт меню «Тест»

Пункт меню «Редактор» предназначен для создания и контроля информационных объектов системы, вход в этот пункт меню осуществляется по паролю (рис. Б.3).

Рисунок Б.3 -Вход в пункт меню «редактор»

Пункт меню «Обработка результатов» предназначен для проведения статистической оценки результатов психологического тестирования (рис. Б.4).

Рисунок Б.4 — Пункт меню «Поиск»

Б.

3.4 Тестирование

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

Рисунок Б.5 — Просмотр справочника приказы на командировку В результате в окне главной формы создаться новое окно с данными для тестирования (рис.Б.6)

Рисунок Б.6 — Прохождение теста Б.

3.5 Редактирование информационных объектов

Для редактирования элемента необходимо выбрать пункт меню «Редактор» (рис.Б.1), а затем ввести пароль (рис. Б.3).

В случае успешного ввода пароля на экране появится форма редактирования (Б.7).

Рисунок Б.7 — Редактирование теста

Б.

3.6 Просмотр данных тестирования

Для просмотра данных тестирования необходимо задействовать кнопку (рис.Б.7), в результате получим форму просмотра базы данных всех проходивших тестирование (рис. Б.8).

Рисунок Б.8 — Задание параметров поиска Б.

3.7 Обработка результатов тестирования

Для обработки результатов тестирования необходимо использовать элемент управления результатов тестирования в результате на экране появится форма представленная на рис. Б.4

Форма имеет две основные альтернативы одна из которых должна быть выбрана либо «Анкета» либо «Диаграмма», если выбор не осуществлен дальнейшая работа невозможна

Б.

3.7 Пункт «Диаграмма»

В случае выбора диаграммы на экране появится изображение представленное на рис. Б.9:

Рис.Б.9 — Выбор «Диграмма»

Для последующей работы необходимо выбрать при помощи мыши (или создать для анализа) в левой панели дерева конкретный информационный объект, выделив его мышью например «Школа 1» (рис.Б.10)

Рис.Б.10 — Выбор Информационного объекта

Затем необходимо определить поле либо «Организация» либо «группа» Для осуществления выборки данных соответсвующих объекту «школа 1», т.к. школа 1 это организация значит выберим «Организация»

Рис.Б.11 — Выбор Фильтра

Используем кнопку загрузить и выбираем данные из текстового файла (рис.Б.12)

Рис.Б.12 — Выполняем команду «загрузить»

Для расчета статистики используем кнопку рассчитать (рис. Б.13)

Рис.Б.13 — Выполняем команду «загрузить»

Для просмотра корреляций по Спирмену используем кнопку Соответствующую кнопку.

Для просмотра диаграммы используем кнопку «Перейти к диаграмме» (рис.Б.14)

Для заполнения диаграммы используем кнопку «Заштриховать» (рис.Б.15)

Рис.Б.14 — Выполняем команду «Перейти к диаграмме»

Рис.Б.15 — Выполняем команду «Заштриховать»

3.8 Выход из системы

Выход из системы осуществляется с помощью пункта «Выход» главного меню системы.

ПРИЛОЖЕНИЕ В ТЕКСТ ПРОГРАММЫ ГЛАВНОГО МОДУЛЯ

unit UnitMain1;

interface

uses

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

Dialogs, ComCtrls, StdCtrls, Buttons, ExtCtrls, jpeg, Grids, main, RzGrids,

ExtDlgs;

type

PNodeOptions = ^NodeOptions;

NodeOptions=record

Name: String[255];

Surname: String[255];

Address: String[255];

EMail: String[255];

end;

TMainForm1 = class (TForm)

TreeView: TTreeView;

Panel1: TPanel;

NewBtn: TBitBtn;

DelBtn: TBitBtn;

SaveBtn: TBitBtn;

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

Image1: TImage;

RadioGroup1: TRadioGroup;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

GroupBox1: TGroupBox;

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Edit2: TEdit;

Label3: TLabel;

Edit3: TEdit;

Button1: TButton;

StringGrid1: TStringGrid;

StringGrid2: TStringGrid;

Label4: TLabel;

StringGrid3: TStringGrid;

StringGrid4: TStringGrid;

Button2: TButton;

Button3: TButton;

Button4: TButton;

TabSheet4: TTabSheet;

Edit4: TEdit;

RadioGroup2: TRadioGroup;

RadioButton4: TRadioButton;

RadioButton3: TRadioButton;

Label5: TLabel;

Button5: TButton;

RzStringGrid1: TRzStringGrid;

Button6: TButton;

RzStringGrid2: TRzStringGrid;

Button7: TButton;

Button8: TButton;

Button9: TButton;

Button10: TButton;

SavePictureDialog1: TSavePictureDialog;

Button11: TButton;

TabSheet5: TTabSheet;

RzStringGrid3: TRzStringGrid;

Label6: TLabel;

Label7: TLabel;

procedure Button11Click (Sender: TObject);

procedure Button10Click (Sender: TObject);

procedure Button9Click (Sender: TObject);

procedure Image1MouseMove (Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure Button8Click (Sender: TObject);

procedure Button7Click (Sender: TObject);

procedure Button6Click (Sender: TObject);

procedure Button5Click (Sender: TObject);

procedure TreeViewClick (Sender: TObject);

procedure Button4Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure RadioButton2Click (Sender: TObject);

procedure RadioButton1Click (Sender: TObject);

procedure FormClose (Sender: TObject; var Action: TCloseAction);

procedure FormCreate (Sender: TObject);

procedure NewBtnClick (Sender: TObject);

procedure SaveBtnClick (Sender: TObject);

procedure TreeViewChanging (Sender: TObject; Node: TTreeNode;

var AllowChange: Boolean);

procedure DelBtnClick (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

MainForm1: TMainForm1;

legend1,legend2:array[1.10,1.4] of word;

d, summ, n: integer;

spir:real;

implementation

{$R *.dfm}

procedure TMainForm1. NewBtnClick (Sender: TObject);

var

NodeName:String;

NodeData:PNodeOptions;

NewNode:TTreeNode;

begin

if not InputQuery ('Новый элемент', 'Введите имя нового элемента',

NodeName) then exit;

NewNode:=TreeView.Items.AddChild (TreeView.Selected, NodeName);

// Инициализация начальных данных структуры

{ NodeData:=new (PNodeOptions);

NodeData.Name:='';

NodeData.Surname:='';

NodeData.Address:='';

NodeData.EMail:='';

NewNode.Data:=NodeData;}

end;

procedure TMainForm1. RadioButton1Click (Sender: TObject);

begin

mainform1.TreeView.Visible:=true;

mainform1.PageControl1.Pages[0]. TabVisible:=false;

mainform1.PageControl1.Pages[1]. TabVisible:=false;

mainform1.PageControl1.Pages[2]. TabVisible:=true;

mainform1.GroupBox1.Visible:=false;

mainform1.NewBtn.Visible:=true;

mainform1.DelBtn.Visible:=true;

mainform1.SaveBtn.Visible:=true;

end;

procedure TMainForm1. RadioButton2Click (Sender: TObject);

begin

mainform1.TreeView.Visible:=false;

mainform1.PageControl1.Pages[2]. TabVisible:=false;

mainform1.PageControl1.Pages[0]. TabVisible:=true;

mainform1.PageControl1.Pages[1]. TabVisible:=true;

mainform1.GroupBox1.Visible:=true;

mainform1.NewBtn.Visible:=false;

mainform1.DelBtn.Visible:=false;

mainform1.SaveBtn.Visible:=false;

end;

procedure TMainForm1. SaveBtnClick (Sender: TObject);

begin

{if TreeView. Selected=nil then exit;

PNodeOptions (TreeView.Selected.Data).Name:=NameEdit.Text;

PNodeOptions (TreeView.Selected.Data).Surname:=SurnameEdit.Text;

PNodeOptions (TreeView.Selected.Data).Address:=AddressEdit.Text;

PNodeOptions (TreeView.Selected.Data).EMail:=EMailEdit.Text;

}

end;

procedure TMainForm1. TreeViewChanging (Sender: TObject; Node: TTreeNode;

var AllowChange: Boolean);

begin

{ if Node=nil then exit;

NameEdit.Text:=PNodeOptions (Node.Data).Name;

SurnameEdit.Text:=PNodeOptions (Node.Data).Surname;

AddressEdit.Text:=PNodeOptions (Node.Data).Address;

EMailEdit.Text:=PNodeOptions (Node.Data).EMail;}

end;

procedure TMainForm1. TreeViewClick (Sender: TObject);

begin

mainform1.Edit4.Text:=mainform1.TreeView.Selected.Text;

end;

procedure TMainForm1. Button10Click (Sender: TObject);

begin

savepicturedialog1.Filter:='*.emf' ;

if savepicturedialog1. Execute then begin

mainform1.Image1.Picture.SaveToFile (savepicturedialog1.FileName);

end;

end;

procedure TMainForm1. Button11Click (Sender: TObject);

var j, jj: word;

begin

mainform1.PageControl1.ActivePageIndex:=4;

mainform1.RzStringGrid3.Cells[1,0]: ='канал';

mainform1.RzStringGrid3.Cells[2,0]: ='полушарие';

mainform1.RzStringGrid3.Cells[3,0]: ='разность';

mainform1.RzStringGrid3.Cells[4,0]: ='кв.разности';

jj:=0;

summ:=0;

for j := 1 to mainform1. RzStringGrid2.RowCount-1 do

begin

mainform1.RzStringGrid3.Cells[1,j]: =MainForm1.RzStringGrid1.Cells[8,j];

mainform1.RzStringGrid3.Cells[2,j]: =MainForm1.RzStringGrid1.Cells[9,j];

d:=abs (strtoint (mainform1.RzStringGrid3.Cells[1,j])-strtoint (mainform1.RzStringGrid3.Cells[2,j]));

summ:=summ+d*d;

mainform1.RzStringGrid3.Cells[3,j]: =inttostr (d);

mainform1.RzStringGrid3.Cells[4,j]: =inttostr (d*d);

jj:=jj+1;

MainForm1.RzStringGrid3.RowCount:=jj;

end;

n:= mainform1. RzStringGrid2.RowCount;

spir:=1−6*summ/(n*(n*n-1));

mainform1.Label7.Caption:='Коэффициент Спирмена = '+floattostr (spir);

end;

procedure TMainForm1. Button1Click (Sender: TObject);

var i, jj: word;

gShortFileName1,gFileName1:string;

st_org, st_gr, st_fio:string;

begin

st_org:='';

st_gr:='';

st_fio:='';

st_org:= mainform1. edit1.Text;

st_gr:= mainform1. edit2.Text;

st_fio:=mainform1.edit3.Text;

if ((st_org<>'')and (st_gr<>'')and (st_fio<>'')) then

begin

mainform1.StringGrid1.Cells[0,0]: ='Вопрос';

mainform1.StringGrid1.Cells[1,0]: ='Ответ';

mainform1.StringGrid1.Cells[2,0]: ='Оценка';

mainform1.StringGrid2.Cells[0,0]: ='Вопрос';

mainform1.StringGrid2.Cells[1,0]: ='Ответ';

mainform1.StringGrid2.Cells[2,0]: ='Оценка';

for i:=1 to 10 do

begin

mainform1.StringGrid2.Cells[0,i]: =inttostr (i);

if i<=6 then

mainform1.StringGrid1.Cells[0,i]: =inttostr (i);

end;

gShortFileName1 := 'test.txt';

gFileName1 := ExtractFilePath (Application.ExeName) + gShortFileName1;

AssignFile (gF2, gFileName1);

jj:=1;

if FileExists (gFileName1) then begin

Reset (gF2);

while not Eof (gF2) do begin

//Читаем записи только для того, чтобы перемещать файловый указатель.

Read (gF2, f_student);

if ((st_org=f_student.org) and (st_gr=f_student.Nomer) and (st_fio=f_student.FIO)) then

begin

if f_student.nom_test1=1 then

begin

for i:=1 to 6 do

begin

mainform1.StringGrid1.Cells[1,i]: =inttostr (f_student.a[i]);

end;

end;

end;

if f_student.nom_test1=0 then

begin

for i:=1 to 10 do

begin

mainform1.StringGrid2.Cells[1,i]: =inttostr (f_student.a[i]);

end;

end;

end;

end;

CloseFile (gF2);

end

else

Showmessage ('Задайте данные анкеты');

{Rezform.RzStringGrid1.Cells[0,jj]: =f_student.FIO;

Rezform.RzStringGrid1.Cells[1,jj]:=f_student.Nomer;

Rezform.RzStringGrid1.Cells[2,jj]:=f_student.org;

Rezform.RzStringGrid1.Cells[3,jj]:=f_student.datetest;

Rezform.RzStringGrid1.Cells[4,jj]:=inttostr (f_student.nom_test1);}

{Rezform.RzStringGrid1.Cells[5,jj]:=inttostr (f_student.vsego);

for i:=1 to 10 do

begin

Rezform.RzStringGrid1.Cells[i+5,jj]: =inttostr (f_student.a[i]);

Rezform.RzStringGrid1.Cells[i+15,jj]:=inttostr (f_student.ac[i]);

end;

//Rezform.RzStringGrid1.Cells[5,jj]:=inttostr (f_student.osh);

jj:=jj+1;

Rezform.RzStringGrid1.RowCount:=jj;

end;

end;

//Закрываем файл.

CloseFile (gF2);}

end;

procedure TMainForm1. Button2Click (Sender: TObject);

var i: word;

Saud, sv, skin, skom: real;

begin

mainform1.StringGrid3.Cells[0,0]: ='Канал';

mainform1.StringGrid3.Cells[1,0]: ='Корреляция';

mainform1.StringGrid3.Cells[2,0]: ='Спирмен';

mainform1.StringGrid3.Cells[0,1]: ='Аудиалы';

mainform1.StringGrid3.Cells[0,2]: ='Визуалы';

mainform1.StringGrid3.Cells[0,3]: ='Кинетики';

mainform1.StringGrid3.Cells[0,4]: ='Комби';

Saud:=0;

Sv:=0;

Skin:=0;

Skom:=0;

for i:=1 to 6 do

begin

case legend1[i, strtoint (mainform1.StringGrid1.Cells[1,i])] of

1: Saud:=Saud+1;

2: Sv:=Sv+1;

3: Skin:=Skin+1;

4: Skom:=Skom+1;

end;

end;

mainform1.StringGrid3.Cells[1,1]: =floattostr (Saud/6);

mainform1.StringGrid3.Cells[1,2]: =floattostr (Sv/6);

mainform1.StringGrid3.Cells[1,3]: =floattostr (Skin/6);

mainform1.StringGrid3.Cells[1,4]: =floattostr (Skom/6);

end;

procedure TMainForm1. Button3Click (Sender: TObject);

var i, kk: word;

Sl, Sp, Sr: real;

begin

mainform1.StringGrid4.Cells[0,0]: ='Полушарие';

mainform1.StringGrid4.Cells[1,0]: ='Корреляция';

mainform1.StringGrid4.Cells[2,0]: ='Спирмен';

mainform1.StringGrid4.Cells[0,1]: ='Левое';

mainform1.StringGrid4.Cells[0,2]: ='Правое';

mainform1.StringGrid4.Cells[0,3]: ='Равное';

Sl:=0;

Sp:=0;

Sr:=0;

for i:=1 to 10 do

begin

case legend2[i, strtoint (mainform1.StringGrid2.Cells[1,i])] of

1: Sl:=Sl+1;

2: Sp:=Sp+1;

3: Sr:=Sr+1;

end;

end;

mainform1.StringGrid4.Cells[1,1]: =floattostr (Sl/10);

mainform1.StringGrid4.Cells[1,2]: =floattostr (Sp/10);

mainform1.StringGrid4.Cells[1,3]: =floattostr (Sr/10);

end;

procedure TMainForm1. Button4Click (Sender: TObject);

var

I: TCanvas;

k, j: integer;

korr:real;

begin

with mainform1. Image1.canvas

do

begin

Pen.Width:=2; //установка полщины пера

Pen.Color:=clGreen; //установка цвета пера

Brush.Color:=clGray; //установка цвета заливки

for k := 1 to 3 do

for j := 1 to 4 do

if rz[k, j]. kol<>0 then

begin

korr:=rz[k, j]. kor/rz[k, j].kol;

if k=1 then begin

if j=1 then begin

if korr<=0.3 then

PolyGon ([Point (281,198), Point (315,181), Point (279,147), Point (258,78) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (281,198), Point (338,170), Point (291,124), Point (258,78) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (281,198), Point (359,155), Point (303,100), Point (258,78) ]);

if korr>=0.7 then

PolyGon ([Point (281,198), Point (383,144), Point (317,77), Point (258,78) ]);

end;

if j=2 then begin

if korr<=0.3 then

PolyGon ([Point (280,199), Point (287,225), Point (325,222), Point (315,121) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (280,199), Point (287,225), Point (349,221), Point (337,170) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (280,199), Point (287,225), Point (378,223), Point (360,158) ]);

if korr>=0.7 then

PolyGon ([Point (280,199), Point (287,225), Point (407,221), Point (385,146) ]);

end;

if j=3 then begin

if korr<=0.3 then

PolyGon ([Point (257,176), Point (276,143), Point (234,136), Point (232,170) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (257,176), Point (287,123), Point (231,107), Point (232,170) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (257,176), Point (300,102), Point (229,80), Point (232,170) ]);

if korr>=0.7 then

PolyGon ([Point (257,176), Point (316,76), Point (242,53), Point (232,170) ]);

end;

if j=4 then begin

if korr<=0.3 then

PolyGon ([Point (228,170), Point (228,132), Point (185,147), Point (204,173) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (228,170), Point (228,106), Point (171,125), Point (204,173) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (228,170), Point (228,85), Point (156,97), Point (204,173) ]);

if korr>=0.7 then

PolyGon ([Point (228,170), Point (228,57), Point (153,74), Point (204,173) ]);

end;

end;

if k=2 then begin

if j=1 then begin

if korr<=0.3 then

PolyGon ([Point (174,225), Point (184,198), Point (152,176), Point (138,224) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (174,225), Point (184,198), Point (126,163), Point (111,224) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (174,225), Point (184,198), Point (104,151), Point (84,224) ]);

if korr>=0.7 then

PolyGon ([Point (174,225), Point (184,198), Point (83,137), Point (58,224) ]);

end;

if j=2 then begin

if korr<=0.3 then

PolyGon ([Point (184,192), Point (202,178), Point (182,146), Point (152,178) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (184,192), Point (202,178), Point (171,125), Point (129,162) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (184,192), Point (202,178), Point (158,99), Point (110,150) ]);

if korr>=0.7 then

PolyGon ([Point (184,192), Point (202,178), Point (143,80), Point (86,133) ]);

end;

if j=3 then begin

if korr<=0.3 then

PolyGon ([Point (180,248), Point (175,226), Point (139,226), Point (147,265) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (180,248), Point (175,226), Point (108,226), Point (123,278) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (180,248), Point (175,226), Point (83,226), Point (100,291) ]);

if korr>=0.7 then

PolyGon ([Point (180,248), Point (175,226), Point (57,226), Point (74,300) ]);

end;

if j=4 then begin

if korr<=0.3 then

PolyGon ([Point (204,273), Point (179,248), Point (149,267), Point (185,299) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (204,273), Point (179,248), Point (122,281), Point (169,324) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (204,273), Point (179,248), Point (100,292), Point (155,349) ]);

if korr>=0.7 then

PolyGon ([Point (204,273), Point (179,248), Point (77,305), Point (140,371) ]);

end;

end;

if k=3 then begin

if j=1 then begin

if korr<=0.3 then

PolyGon ([Point (257,273), Point (132,279), Point (231,312), Point (276,305) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (257,273), Point (132,279), Point (231,345), Point (289,328) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (257,273), Point (132,279), Point (231,366), Point (305,351) ]);

if korr>=0.7 then

PolyGon ([Point (257,273), Point (132,279), Point (231,395), Point (317,376) ]);

end;

if j=2 then begin

if korr<=0.3 then

PolyGon ([Point (229,281), Point (205,274), Point (189,302), Point (229,313) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (229,281), Point (205,274), Point (172,329), Point (228,342) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (229,281), Point (205,274), Point (161,350), Point (227,367) ]);

if korr>=0.7 then

PolyGon ([Point (229,281), Point (205,274), Point (146,375), Point (229,395) ]);

end;

if j=3 then begin

if korr<=0.3 then

PolyGon ([Point (279,256), Point (260,273), Point (275,303), Point (311,272) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (279,256), Point (260,273), Point (288,329), Point (333,288) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (279,256), Point (260,273), Point (301,349), Point (354,300) ]);

if korr>=0.7 then

PolyGon ([Point (279,256), Point (260,273), Point (318,373), Point (379,315) ]);

end;

if j=4 then begin

if korr<=0.3 then

PolyGon ([Point (283,241), Point (280,254), Point (311,272), Point (321,253) ]);

if ((korr<=0.5) and (korr>0.3)) then

PolyGon ([Point (283,241), Point (280,254), Point (335,284), Point (349,248) ]);

if ((korr<=0.7) and (korr>0.5)) then

PolyGon ([Point (283,241), Point (280,254), Point (356,301), Point (378,250) ]);

if korr>=0.7 then

PolyGon ([Point (283,241), Point (280,254), Point (380,312), Point (405,254) ]);

end;

end;

end;

end;

end;

procedure TMainForm1. Button5Click (Sender: TObject);

var i, jj: word;

filtr:string;

begin

filtr:=edit4.Text;

For i:=0 to RzStringGrid1. RowCount-1 do

RzStringGrid1.Rows[i]. Clear;

MainForm1.RzStringGrid1.ColWidths[0]: =100;

MainForm1.RzStringGrid1.Cells[0,0]:='Студент';

MainForm1.RzStringGrid1.ColWidths[1]:=50;

MainForm1.RzStringGrid1.Cells[1,0]:='Группа';

MainForm1.RzStringGrid1.ColWidths[2]:=50;

MainForm1.RzStringGrid1.Cells[2,0]:='Организация';

MainForm1.RzStringGrid1.ColWidths[3]:=50;

MainForm1.RzStringGrid1.Cells[3,0]:='Дата';

MainForm1.RzStringGrid1.ColWidths[4]:=100;

MainForm1.RzStringGrid1.Cells[4,0]:='Тема';

MainForm1.RzStringGrid1.ColWidths[5]:=100;

MainForm1.RzStringGrid1.Cells[5,0]:='всего';

for i:=1 to 10 do

begin

MainForm1.RzStringGrid1.ColWidths[i+5]: =15;

MainForm1.RzStringGrid1.Cells[i+5,0]:=inttostr (i);

end;

gShortFileName1 := 'test.txt';

gFileName1 := ExtractFilePath (Application.ExeName) + gShortFileName1;

AssignFile (gF2, gFileName1);

jj:=1;

if FileExists (gFileName1) then begin

Reset (gF2);

while not Eof (gF2) do begin

//Читаем записи только для того, чтобы перемещать файловый указатель.

Read (gF2, f_student);

if ((mainform1.RadioButton3.Checked and (f_student.org=filtr))or (mainform1.RadioButton4.Checked and (f_student.Nomer=filtr))) then

begin

MainForm1.RzStringGrid1.ColWidths[0]: =100;

MainForm1.RzStringGrid1.Cells[0,jj]:=f_student.FIO;

MainForm1.RzStringGrid1.Cells[1,jj]:=f_student.Nomer;

MainForm1.RzStringGrid1.Cells[2,jj]:=f_student.org;

MainForm1.RzStringGrid1.Cells[3,jj]:=f_student.datetest;

MainForm1.RzStringGrid1.Cells[4,jj]:=inttostr (f_student.nom_test1);

MainForm1.RzStringGrid1.Cells[5,jj]:=inttostr (f_student.vsego);

for i:=1 to 10 do

begin

MainForm1.RzStringGrid1.Cells[i+5,jj]: =inttostr (f_student.a[i]);

end;

end;

jj:=jj+1;

MainForm1.RzStringGrid1.RowCount:=jj;

end;

end;

//Закрываем файл.

CloseFile (gF2);

end;

procedure TMainForm1. Button6Click (Sender: TObject);

begin

mainform1.close;

mainform.ShowModal;

end;

procedure TMainForm1. Button7Click (Sender: TObject);

var i, j, ik, maxi, jj: word;

Saud, sv, skin, skom, max: real;

Sl, Sp, Sr: real;

polu, kanal: word;

sss:string;

begin

mainform1.RzStringGrid2.Cells[0,0]: ='Имя';

mainform1.RzStringGrid2.Cells[1,0]: ='Аудиалы';

mainform1.RzStringGrid2.Cells[2,0]: ='Визуалы';

mainform1.RzStringGrid2.Cells[3,0]: ='Кинетики';

mainform1.RzStringGrid2.Cells[4,0]: ='Комби';

mainform1.RzStringGrid2.Cells[5,0]: ='Левое';

mainform1.RzStringGrid2.Cells[6,0]: ='Правое';

mainform1.RzStringGrid2.Cells[7,0]: ='Равное';

mainform1.RzStringGrid2.Cells[8,0]: ='канал';

mainform1.RzStringGrid2.Cells[9,0]: ='Полушарие';

for j := 1 to mainform1. RzStringGrid1.RowCount do

begin

if mainform1. RzStringGrid1.Cells[4,j]=inttostr (1) then

begin

Saud:=0;

Sv:=0;

Skin:=0;

Skom:=0;

for i:=1 to 6 do

begin

case legend1[i, strtoint (mainform1.RzStringGrid1.Cells[i+5,j])] of

1: Saud:=Saud+1;

2: Sv:=Sv+1;

3: Skin:=Skin+1;

4: Skom:=Skom+1;

end;

end;

mainform1.RzStringGrid2.Cells[0,j]: =MainForm1.RzStringGrid1.Cells[0,j];

mainform1.RzStringGrid2.Cells[1,j]: =floattostr (Saud/6);

mainform1.RzStringGrid2.Cells[2,j]: =floattostr (Sv/6);

mainform1.RzStringGrid2.Cells[3,j]: =floattostr (Skin/6);

mainform1.RzStringGrid2.Cells[4,j]: =floattostr (Skom/6);

end;

end;

jj:=2;

for j := 1 to mainform1. RzStringGrid2.RowCount do

begin

sss:=mainform1.RzStringGrid2.Cells[0,j];

for ik := 1 to mainform1. RzStringGrid1.RowCount do

begin

if ((MainForm1.RzStringGrid1.Cells[0,ik]=sss) and (mainform1.RzStringGrid1.Cells[4,ik]=inttostr (0))) then

begin

Sl:=0;

Sp:=0;

Sr:=0;

for i:=1 to 10 do

begin

case legend2[i, strtoint (mainform1.RzStringGrid1.Cells[i+5,ik])] of

1: Sl:=Sl+1;

2: Sp:=Sp+1;

3: Sr:=Sr+1;

end;

end;

mainform1.RzStringGrid2.Cells[5,j]: =floattostr (Sl/10);

mainform1.RzStringGrid2.Cells[6,j]: =floattostr (Sp/10);

mainform1.RZStringGrid2.Cells[7,j]: =floattostr (Sr/10);

jj:=jj+1;

mainform1.RzStringGrid2.RowCount:=jj;

end;

end;

end;

for j := 1 to mainform1. RzStringGrid2.RowCount do

begin

if mainform1. RzStringGrid2.Cells[1,j]<>'' then

begin

max:=strtofloat (mainform1.RzStringGrid2.Cells[1,j]);

maxi:=1;

for I := 2 to 4 do

begin

if max< strtofloat (mainform1.RzStringGrid2.Cells[i, j]) then

begin

maxi:=i;

max:=strtofloat (mainform1.RzStringGrid2.Cells[i, j]);

end;

end;

mainform1.RzStringGrid2.Cells[8,j]: =inttostr (maxi);

end;

if mainform1. RzStringGrid2.Cells[5,j]<>'' then

begin

max:=strtofloat (mainform1.RzStringGrid2.Cells[5,j]);

maxi:=5;

for I := 6 to 7 do

begin

if max< strtofloat (mainform1.RzStringGrid2.Cells[i, j]) then

begin

maxi:=i;

max:=strtofloat (mainform1.RzStringGrid2.Cells[i, j]);

end;

end;

mainform1.RzStringGrid2.Cells[9,j]: =inttostr (maxi-4);

end;

end;

for i := 1 to 3 do

for j := 1 to 4 do

begin

RZ[i, j]. kol:=0;

RZ[i, j]. kor:=0;

end;

for j := 1 to mainform1. RzStringGrid2.RowCount do

begin

if mainform1. RzStringGrid2.Cells[9,j]<>'' then

begin

polu:=strtoint (mainform1.RzStringGrid2.Cells[9,j]);

kanal:=strtoint (mainform1.RzStringGrid2.Cells[8,j]);

rz[polu, kanal]. kol:=rz[polu, kanal].kol+1;

rz[polu, kanal].kor:=rz[polu, kanal].kor+strtofloat (mainform1.RzStringGrid2.Cells[kanal, j]) ;

end;

end;

end;

procedure TMainForm1. Button8Click (Sender: TObject);

begin

mainform1.PageControl1.ActivePageIndex:=2;

end;

procedure TMainForm1. Button9Click (Sender: TObject);

var

SaveJpeg: TJpegImage;

BitMap: TBitMap;

begin

savepicturedialog1.Filter:='*.jpg' ;

if savepicturedialog1. Execute then begin

SaveJpeg := TjpegImage. Create;

BitMap := TBitMap. Create;

BitMap.Width := 500; // Ставиш размеры желаймой картинки

BitMap.Height := 500; // Ставиш размеры желаймой картинки

BitMap.Canvas.CopyRect (BitMap.Canvas.ClipRect, Image1. Canvas, Image1.Canvas.ClipRect);

SaveJpeg.Assign (Bitmap);

SaveJpeg.CompressionQuality := 100; // От этого значения тоже зависит вес, но и качество

SaveJpeg.PixelFormat := jf24Bit;

SaveJpeg.Compress;

SaveJpeg.SaveToFile (savepicturedialog1.FileName);

BitMap.Free;

SaveJpeg.Free;

end;

end;

procedure TMainForm1. DelBtnClick (Sender: TObject);

begin

if TreeView. Selected=nil then exit;

TreeView.Selected.Delete;

end;

procedure TMainForm1. FormClose (Sender: TObject; var Action: TCloseAction);

var ff: string;

begin

ff:=ExtractFilePath (Application.ExeName)+'11';

TreeView.SaveToFile (ff);

end;

procedure TMainForm1. FormCreate (Sender: TObject);

var ff: string;

begin

ff:=ExtractFilePath (Application.ExeName)+'11';

TreeView.LoadfromFile (ff);

legend2[1,1]: =1; legend2[1,2]: =2; legend2[1,3]: =3;

legend2[2,1]: =1; legend2[2,2]: =2; legend2[2,3]: =3;

legend2[3,1]: =2; legend2[3,2]: =1; legend2[3,3]: =3;

legend2[4,1]: =2; legend2[4,2]: =1; legend2[4,3]: =3;

legend2[5,1]: =1; legend2[5,2]: =2; legend2[5,3]: =3;

legend2[6,1]: =2; legend2[6,2]: =1; legend2[6,3]: =3;

legend2[7,1]: =2; legend2[7,2]: =1; legend2[7,3]: =3;

legend2[8,1]: =2; legend2[6,2]: =1; legend2[6,3]: =3;

legend2[9,1]: =2; legend2[7,2]: =1; legend2[7,3]: =3;

legend2[10,1]: =1; legend2[6,2]: =2; legend2[6,3]: =3;

legend1[1,1]: =3; legend1[1,2]: =2; legend1[1,3]: =1; legend1[1,4]: =4;

legend1[2,1]: =2; legend1[2,2]: =1; legend1[2,3]: =4; legend1[2,4]: =3;

legend1[3,1]: =1; legend1[3,2]: =3; legend1[3,3]: =4; legend1[3,4]: =2;

legend1[4,1]: =2; legend1[4,2]: =4; legend1[4,3]: =1; legend1[4,4]: =99;

legend1[5,1]: =2; legend1[5,2]: =4; legend1[5,3]: =3; legend1[5,4]: =1;

legend1[6,1]: =2; legend1[6,2]: =4; legend1[6,3]: =3; legend1[6,4]: =1;

end;

procedure TMainForm1. Image1MouseMove (Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

{mainform1.Label6.Caption:='x= '+inttostr (x);

mainform1.Label7.Caption:='y= '+inttostr (y);}

end;

end.

Показать весь текст

Список литературы

  1. ГОСТ 19.701−90 (ИСО 5807−85). Схемы алгоритмов программ, данных и систем. Условные обозначения и правила выполнения. — Введ. 01.01.92. — М.: Госстандартиздат, 1990. — 20 с.
  2. ГОСТ 19.701−90 (ИСО 5807−85). Схемы алгоритмов программ, данных и систем. Условные обозначения и правила выполнения. — Введ. 01.01.92. — М.: Госстандартиздат, 1990. — 20 с.
  3. Принципы комплексной оценки напряженности труда и рабочего напряжения при умственных видах деятельности, М., НИИ Медицины труда РФ, 1986. — М.: Госстандартиздат, 1986.
  4. Р 2.2.2006−05 Руководство по гигиенической оценке факторов рабочей среды и трудового процесса. критерии и классификация условий труда
  5. СанПиН 2.2.2/2.4.1340−03 Гигиенические требования к персональным электронно-вычислительным машинам и организации работы., утвержденные Главным государственным санитарным врачом Российской Федерации 30 мая 2003 года.
  6. СанПиН 2.2.4.548−96 «Гигиенические требования к микроклимату производственных помещений»
  7. Г. Н. Проектирование экономических информационных систем: учебник / Г. Н. Смирнова, А. А. Сорокин, Ю. Ф. Тельнов — М.: Финансы и Статистика. — 2002. 512 с.
  8. СНиП 23−05−95. Естественное и искусственное освещение/М.: Информ. реклам. издат., 1995.-35с.
  9. Delphi 7 в подлиннике. А. Хомоненко. СПб: BHV, 2003 — 1216 стр.
  10. Delphi 7 на примерах/Под ред. Ю. С. Ковтанюка — К.: Издательство Юниор, 2003. — 384 с., ил.
  11. Архангельский А.Я. Delphi 6. Справочное пособие. — М.: Бином, 2001. — 1024с.
  12. А.Я. Программирование в Delphi 6. — М.: Бином, 2001. — 564с.
  13. Буч Г. Объектно-ориентированное проектирование с примерами применения. М., 1992. — 654с.
  14. А.М. Проектирование программного обеспечения экономических информационных систем. М.: «Финансы и статистика», 2002.
  15. В. Ф. Экономика предприятия. — М.: Вита-Пресс, 1998. — 380с.
  16. С.В., Ломотько Д. В. Базы данных .- Х.: Фолио, 2002. — 504 с.
  17. В.Э. Хомоненко А.Д. Delphi 5. — СПб.: — Санки-Петербург, 2000. -800с.
  18. Конноли Томас, Бегг Каролин. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. — М.: Вильямс, 2000. — 1111 с.
  19. Культин Н.Б. Delphi 6: Программирование на OBJECT PASCAL. — М.: Бином, 2001. — 526 с.
  20. Культин Н.Б. Delphi 7: Программирование на OBJECT PASCAL. — М.: Бином, 2003. — 535 с.
  21. Культин Н.Б. Delphi 7: Программирование на OBJECT PASCAL. — М.: Бином, 2003. — 535 с.
  22. Маклаков С.В. BPwin и ERwin. CASE-средства разработки информационных систем. — М.: Диалог-Мифи, 2001. — 304 с.
  23. Нестандартные приемы программирования на Delphi. — СПб.: БХВ-Петербург, 2005. — 560 с: ил.
  24. Принципы проектирования и разработки программного обеспечения. Учебный курс MCSD: Скотт Ф. Уилсон, Брюс Мэйплс, Тим Лэндгрейв. — М: Русская редакция, 2002. — 736стр.
  25. Р., Шафер Д. Шафер Л. Управление программными проектами: достижение оптимального качества при минимуме затрат. М.: «Вильямс», 2003. — 1128с.
  26. Д.Э. Типы и структуры данных в современных языках программирования. / Учебное пособие. Москва, 1981 г.
  27. Д.Э. Особенности архитектуры вычислительных систем и функциональная структура операционных систем. / Текст лекций. Москва, 1987 г.
  28. Д.Э. Технология разработки и отладки программ: Учебн. пособие / МИРЭА.-М., 1987.-80с.
  29. E.Г., Колесников Г. С., Сыромятников В. П. Структуры и алгоритмы обработки данных — часть 1. / Учебное пособие дли студентов специальности 220 400. — МИРЭА, Москва, 2004 г.
  30. E.Г., Колесников Г. С., Сыромятников В. П. Структуры и алгоритмы обработки данных — часть 2. / Лабораторный практикум. МИРЭА, Москва, 2004 г.
  31. Обеспечение безопасных и комфортных условий работы на ПЭВМ: учеб. пособие / Е. Г. Андрианова, Г. В. Зикеева, Д. Э. Федотова. — М.: 1995. — 76 с.
  32. Л.Г.Гагарина, Д. В. Киселев и др. Разработка и эксплуатация автоматизированных информационных систем: учеб. пособие / под ред.проф. Л. Г. Гагариной. — М: ИД"Форум": ИНФРА-М, 2007. — 384 с.
  33. Единая система программной документации. http://www.nist.ru/hr/doc/gost/gost19.htm
  34. СНиП 23−05−95. Естественное и искусственное освещение. Введен в действие с 02.08.95. М.: Изд. стандартов, 1996. — 29 с.
  35. , В.Л. Доминантность полушарий и её определение/ В.Л.
  36. , Т.А. Карасёва // Вопросы психологии. — 1967. — № 1. — С.81−86.
  37. , Э. Латеральное мышление/ Э. де Боно. — СПб: Питер, 1997.
  38. Ибатуллина // Вопросы психологии. — 1989. -№ 2.- С.20−27.
  39. , Г. А. Показатели межполушарной асимметрии творческого процесса в изобразительном искусстве/ Г. А. Голицын, М. Н. Георгиев, В. М. Петров // Вопросы психологии. — 1989. — № 5. — С.148−153.
  40. , Г. А. Информация — поведение — творчество/ Г. А. Голицын, В. М. Петров. — М.: Наука, 1991.
  41. , В.Л. О роли доминантного полушария в регуляции эмоциональных состояний/ В. Л. Деглин, Н. Н. Николаенко // Физиология человека. — 1975. — Т.1, № 3. — С.418.
  42. , В.Н. Психология общих способностей/ В. Н. Дружинин. — М.: Лантерна; Вита, 1995.
  43. , Н.В. Психофизиология ребёнка/ Н. В. Дубровинская, Д. А. Фарбер, М. М. Безруких. — М.: Владос, 2000.
  44. , Т.В. Взаимосвязь индивидуальных свойств при разной межполушарной активности/ Т. В. Евтух //III Съезд РПО: Психология и культура. Санкт-Петербург, 25−28 июня 2003. — СПб., 2003. — Т.3. — С.203−205.
  45. , Т.В. Взаимосвязь особенностей межполушарной асимметрии с разноуровневыми свойствами интегральной индивидуальности/ Т.В. Евтух// Актуальные проблемы интеллектуального и личностного развития: Мат-лы Междунар. науч.-практ. конференции. 16−17 апреля 2004 г. — М.: Таганка, 2004. — С.40−42.
  46. , М.С. Психология индивидуальных различий/ М. С. Егорова. — М.: Планета детей, 1997.
  47. , А.Е. Подростковая психиатрия/ А. Е. Личко. — М., 1985.
  48. , А.Е. Психопатии и акцентуации характера у подростков/ А. Е. Личко. — Л., 1977
  49. , В.П. Психофизиологические механизмы адаптации и функциональная асимметрия мозга/ В. П. Леутин, Е. И. Николаева. — Новосибирск: Наука, 1988.
Заполнить форму текущей работой
Купить готовую работу

ИЛИ