Оболочка тестовой программы

Моделирование производственно-экономических процессов и экспертных систем. Разработка объектно-ориентированной модели программных компонент в среде Delphi. Масштабируемые средства для построения баз данных. Структура меню, описание работы программы.

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

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

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

отсутствие резких теней, прямой и отражённой блёскости (блёскость - повышенная яркость светящихся поверхностей, вызывающая ослеплённость);

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

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

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

Площадь оконных проёмов должна составлять не менее 25% площади пола. В помещении рекомендуется комбинированная система освещения с использованием люминесцентных ламп. Для проектирования местного освещения рекомендуются люминесцентные лампы, светильники которых установлены на столе или его вертикальной панели.

Светильники местного освещения должны иметь приспособления для ориентации в разных направлениях, устройствах для регулирования яркости и защитные решётки от ослепления и отражённого света.

4.2.2 Расчёт искусственного освещения

Имеется помещение инженера-разработчика размером:

длина 5 м;

ширина 4 м;

высота 3 м.

Потолок, пол и стены окрашены краской. Метод светового потока сводится к определению количества светильников по следующей формуле [3.5]:

N = (*Sп*К*Z) / (F* *n)

где Енорм - нормируемая минимальная освещённость на рабочем месте, лк;

Енорм = 400 лк;

Sn - площадь производственного помещения, м2; S = 20 м2;

К - коэффициент запаса светового потока, зависящий от степени загрязнения ламп, К = 1.4,

Z - коэффициент минимальной освещенности, для люминесцентных ламп = z = 1.1

F - световой поток лампы, лм;

коэффициент использования светового потока ламп;

n - число ламп в светильнике, n = 2.4;

коэффициент затенения, = 0.9

Индекс помещения определяется по формуле:

А и В - длина и ширина помещения, м;

Нр - высота подвеса светильника над рабочей поверхностью, м.

После подстановки данных, находим индекс помещения:

i = (5*4) / (2*(5+4)) = 1.11

Коэффициенты отражения потолка и пола принимаем 0.75 и 0.50 соответственно. В зависимости от индекса помещения и коэффициентов отражения потолка и пола находим коэффициент использования светового потока по таблице [2.5]

Выбираем тип люминесцентных ламп низкого давления:

Лампа ЛТБ-20, световой поток 975 лм;

Лампа ЛТБ-30, световой поток 1720 лм;

Лампа ЛТБ-40, световой поток 3000 лм.

Подставив все значения, найдем количество светильников:

N = (400*20* 1.4*1.1)/(975*0.54*2.4*0.9) = 10.8 = 11 шт;

N = (400*20* 1.4*1.1)/(1720*0.54*2,4*0.9) = 6.1 = 6 шт;

N = (400*20*1.4*1.1)/(3000*0.54*2.4*0.9) = 3.52 = 4 шт.

Из трех вариантов выбираем наиболее экономичный.

Для определения оптимального варианта надо рассчитать:

Руд = N*F/Sn

1. Руд = 11*975 / 20 = 536.25

2. Руд = 6*1720 / 20 = 516

3. Руд = 4*3000 / 20 = 600

Следовательно, наиболее экономичным будет вариант 2:

ЛТБ-30, и поэтому конструктивно выбираем его.

программный база данный delphi

4.3 Рациональная планировка рабочих мест

Для создания равномерной освещённости рабочих мест при общем освещении светильники с люминесцентными лампами встраиваются непосредственно в потолок помещения и располагается в равномерно-прямоугольном порядке. Наиболее желательное расположение светильников в непрерывный сплошной ряд вдоль длинной стороны помещения. Коэффициент наивыгоднейшего расположения светильников определяется по формуле [2.5]:

Lm = Lc / Hp,

где Lm - коэффициент наивыгоднейшего расположения светильников,

Lm = 1.3;

Lс - расстояние между центрами светильников, м. Отсюда,

Lс = l.3*2 = 2.6 м.

Число рядов светильников определяем по формуле:

m = B/Lс, m = 4/2.6 = 1.53 = 2.

Число светильников в ряду определяем по формуле:

M = N/m, М = 6/2 = 3шт.

Суммарная длина светильников в ряду -1св М, учитывая, что

1св = [1л+(0.05-0.1)],

где 1св - длина светильника, м ;

1л - длина лампы, м.

1св = 0.909+0.9 = 1 м

Отсюда расстояние между светильниками в ряду определим из следующего соотношения:

A-1св*M

К =

M+1

K = (5-1*3) / (3+1) = 0.5 м

Схема расположения светильников приведена на рис. 8.

Рис. 8. Схема расположения светильников в помещении: 1 - оконный проем; 2- светильник; 3 - рабочий стол;

4.4.1 Утилизация и переработка ртути в люминесцентных лампах

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

Только в приборостроительной области количество используемых люминесцентных ламп исчисляется миллионами и через 1.5-2 года выбрасывается на свалки.

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

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

Ртуть (Hg) имеет атомный вес 200,59. Она мало распространена в природе: ее содержание в земной коре составляет всего 0,000005 вес.%. Изредка ртуть встречается в самородном виде, вкрапленная в горные породы, но главным образом она находится в природе в виде сульфида ртути HgS , или киновари. Ртуть - единственный металл, жидкий при обыкновенной температуре, ее плотность составляет 13,546г/см3.

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

Кроме того, не утилизированные люминесцентные лампы могут приводить к попаданию паров ртути в атмосферный воздух, через почву и воду,

Ртуть относится к веществам первого класса опасности, а ее величина ПДК- 0,0003 мг/м3 согласно СН 245-71 т.е. ртуть является чрезвычайно опасным веществом, оказывающее пагубное влияние на окружающую среду и живой мир,

Каждая лампа содержит 60,.. 120мг ртути. Примерно 100г ртути можно получить из 1000 ламп. Испарение такого количества ртути из разбитых ламп приводит к загрязнению 10 млн.м3 воздуха по ПДК.

Переработка использованных люминесцентных ламп исключает это воздействие.

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

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

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

Рис. 9. Схема демеркуризации люминесцентных ламп

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

Операция погрузки в контейнер осуществляется перемещением боя стекла ламп и арматуры по желобу.

Операция демеркуризации боя стекла ламп производят помещением контейнера в ванну с демеркуризационным раствором, где его выдерживают в течение 1,5 часов.

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

Таблица 1

Химический состав и удельный расход демеркуризационных растворов

Тип раствора

Состав и удельный расход на одну лампу демеркуризационного раствора

Состав и удельный расход на одну лампу демеркуризационного раствора

Раствор №1, Температура Раствора 280°

Перманганат калия Ктп04-0.00025г/л Соляная кислота НС1 -0,000125г/л Техническая вода-0,0375г/л

Ионы в перечете на металлическую ртуть:

KMn04-0.5* 10г/л

НС1-0.25* 10г/л

Раствор №2, Температура Раствора 28°

Хлорное железо Fed * 6Н20 - 0.0025г/л Карбонат кальция СаСОз-0,0015г/л Техническая вода -0,0375 г/л

Ионы в пересчете на металлическую ртуть:

Fed * 6Н2О - 0.25 * 10г/л,

СаСОз -3.75* 10г/л

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

Операция сбора демеркуризационного раствора производится в приемный бак емкостью 1,6 м3.

Операция перекачки отработанного раствора производится насосом в ионообменный фильтр с сульфоуглем типа ККУ-2, предварительно прошедшем регенерацию раствором СаСОз.

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

Наряду с основными операциями имеются дополнительные.

Отработанный демеркуризационный раствор может быть направлен в бак емкостью 1,6 м3 для повторного приготовления демеркуризационного раствора или в системы хозяйственно-фекальной канализации предприятия.

Массу подвергают обработке (отделению металлической арматуры от боя стекла).

Бой стекла ламп направляют для переработки на предприятие по производству ламп или на предприятие стеклянных изделий.

Металлическую арматуру направляют для переплава на машиностроительные и металлургические предприятия.

Общее количество ртути, которое может быть извлечено при демеркуризации люминесцентных ламп определяют по формуле:

М = m * N,

где М - общее количество ртути, которое может быть извлечено из люминесцентных ламп.

m - количество ртути, которое может быть извлечено из одной лампы, г;

Количество ртути в одной люминесцентной лампе - 0,05-0,12 г.

После подстановки известных значений получаем:

M = 0.12 * 12 = 1.44 г

С учетом всех производственных помещений это уже значительная цифра и путь к созданию природоохранной системы.

ЗАКЛЮЧЕНИЕ

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

Данную дипломную работу составляет немаловажные четыре части. В первой части характеризуется термин модели и классификация. Во второй части дается полная характеристика об универсальном инструменте предназначенной для автоматизированного рабочего места, что разрабатывается в среде Delphi. В третьей части рассматривается полное описание программного продукта. В четвертой части рассматривается «Безопасность жизнедеятельности» проведен анализ вредных факторов, оказывающих влияние на органы зрения пользователя ПЭВМ. Сформированы общие требования к помещению и произведен расчет искусственного освещения. Проведена экологическая оценка люминесцентных ламп, которые используются в производственном помещении.

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

Программа может использоваться как обычными пользователями персональных компьютеров (тестирующиеся), так и пользователями, которые составляют эти тесты.

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

Баженова А.Ю. Delphi 6 (учебный курс); Петер 2002 г.

Фаронов Валерий Delphi 6 (учебный курс); Санкт-Петербург 2002 г.

Конспект лекций по предмету моделирование производственно-экономических процессов (МОПЭП).

Когловский М.Р., "Технология баз данных на персональных ЭВМ", Москва, 'Финансы и статистика', 1992 г.

Шумаков П. В., "Delphi 3.0 и создание баз данных". Москва 1997 г.

ПРИЛОЖЕНИЕ 1

Листинг программы

//Главная форма

unit Unit1;

interface

uses

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

Menus, Db, DBTables, jpeg, ExtCtrls, StdCtrls, Grids, DBGrids, DBCtrls,

Buttons;

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

Table2: TTable;

DataSource2: TDataSource;

DataSource1: TDataSource;

Table1: TTable;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

Image1: TImage;

SpeedButton1: TSpeedButton;

SpeedButton2: TSpeedButton;

SpeedButton3: TSpeedButton;

N7: TMenuItem;

procedure N2Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure Table1BeforePost(DataSet: TDataSet);

procedure Table1AfterPost(DataSet: TDataSet);

procedure N6Click(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure Table1AfterDelete(DataSet: TDataSet);

procedure N7Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2, Unit3, Unit4, Unit7, Unit6,Unit8;

{$R *.DFM}

procedure TForm1.N2Click(Sender: TObject);

begin

form7.show;

end;

procedure TForm1.N3Click(Sender: TObject);

begin

form6.show;

end;

procedure TForm1.Table1BeforePost(DataSet: TDataSet);

begin

table1.FieldByName('level').asString: = form3.edit1.text;

table1.FieldByName('pr ans').asInteger: = form3.radiogroup1.ItemIndex;

end;

procedure TForm1.Table1AfterPost(DataSet: TDataSet);

begin

form3.label3.caption: = inttostr(form1.Table1.recordcount);

end;

procedure TForm1.N6Click(Sender: TObject);

begin

Form8.ShowModal;

end;

procedure TForm1.N5Click(Sender: TObject);

begin

Application.HelpCommand(help_finder,0);

end;

procedure TForm1.Table1AfterDelete(DataSet: TDataSet);

begin

form3.label3.caption: = inttostr(form1.Table1.recordcount);

end;

procedure TForm1.N7Click(Sender: TObject);

begin

//выводит окно подтверждение на выход

if MessageDlg('Завершить работу',mtConfirmation,[mbYes,mbNo],0) =

mryes

then form1.Close;

end;

end.

ПРИЛОЖЕНИЕ 2

//Форма теста

unit Unit2;

interface

uses

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

StdCtrls, DBCtrls, ExtCtrls, Grids, DBGrids;

type

TForm2 = class(TForm)

DBMemo1: TDBMemo;

RadioGroup1: TRadioGroup;

Button1: TButton;

Button2: TButton;

Button3: TButton;

Button4: TButton;

Panel1: TPanel;

Label1: TLabel;

DBText1: TDBText;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Button5: TButton;

procedure FormShow(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

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

procedure Button5Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

h:integer;

implementation

uses unit1, Unit5, Unit7;

{$R *.DFM}

procedure TForm2.FormShow(Sender: TObject);

begin

form1.table2.first;

label4.Caption: = inttostr(form1.table2.recordcount);

radiogroup1.Items.add(form1.table2.fieldbyname('ans1').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans2').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans3').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans4').asString);

h: = 1;

label2.Caption: = inttostr(h);

end;

procedure TForm2.Button1Click(Sender: TObject);

var l:integer;

begin

if h>1 then

begin

form1.table2.Prior;

for l: = 0 to 3 do radiogroup1.Items.Clear ;

radiogroup1.Items.add(form1.table2.fieldbyname('ans1').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans2').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans3').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans4').asString);

h: = h-1;

label2.Caption: = inttostr(h);

if form1.table2.fieldbyname('otvet').asString<>'' then

radiogroup1.itemindex: = form1.table2.fieldbyname('otvet').asInteger;

end;

end;

procedure TForm2.Button2Click(Sender: TObject);

var l:integer;

begin

if h<form1.table2.recordcount then

begin

form1.table2.Next;

radiogroup1.Items.Clear ;

radiogroup1.Items.add(form1.table2.fieldbyname('ans1').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans2').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans3').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans4').asString);

h: = h+1;

label2.Caption: = inttostr(h);

if form1.table2.fieldbyname('otvet').asString<>'' then {если правильный

ответ отмечен то при перемещении выводим его в радиогруп}

radiogroup1.itemindex: = form1.table2.fieldbyname('otvet').asInteger;

end;

end;

procedure TForm2.Button4Click(Sender: TObject);

var l,s,s1:integer;

begin

if h< = form1.table2.recordcount then

begin

Form1.table2.edit;

Form1.table2.FieldByName('otvet').asInteger: = radiogroup1.ItemIndex;

Form1.table2.post;

if form1.table2.fields[8].asInteger = form1.table2.fields[7].asInteger then

showmessage('Правильно') else showmessage('Не правильно');

if h<form1.table2.recordcount then

begin

Form1.table2.Next;

for l: = 0 to 3 do radiogroup1.Items.Clear ;

radiogroup1.Items.add(form1.table2.fieldbyname('ans1').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans2').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans3').asString);

radiogroup1.Items.add(form1.table2.fieldbyname('ans4').asString);

end;

h: = h+1;

label2.Caption: = inttostr(h);

if form1.table2.fieldbyname('otvet').asString<>'' then

radiogroup1.itemindex: = form1.table2.fieldbyname('otvet').asInteger;

end

else

showmessage('Вопросы закончились');

end;

procedure TForm2.Button3Click(Sender: TObject);

var i,s,s1: integer; g:real;

begin

s: = 0; S1: = 0;

form1.table2.first;

for i: = 1 to form1.table2.recordcount do

begin

s1: = s1+form1.table2.fieldbyname('level').asInteger; {s1 сумма баллов на

100%}

if form1.table2.fields[8].asInteger = form1.table2.fields[7].asInteger then

s: = s+form1.table2.fieldbyname('level').asInteger; {s1 сумма баллов

отвеченных}

form1.table2.next;

end;

g: = s*100/s1; {процент правильности}

if g<50 then Form5.label2.caption: = '2 Попробуй ещё';

if (g<75)and (g> = 50) then Form5.label2.caption: = '3 Слабо';

if (g<90)and (g> = 75) then Form5.label2.caption: = '4 Неплохо';

if (g< = 100)and (g> = 90) then Form5.label2.caption: = '5 Молодец';

for i: = 1 to form1.table2.recordcount do

form1.table2.Delete;

form5.Show;

form5.Label3.caption: = form7.edit1.text;

form2.close; end;

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

var l,i:integer;

begin

for l: = 0 to 3 do

begin

radiogroup1.Items.Clear ;//radiogroup1.Items.Delete(l);

end;

for i: = 1 to form1.table2.recordcount do

form1.table2.Delete;

end;

procedure TForm2.Button5Click(Sender: TObject);

begin

//выводит окно подтверждение на выход

if MessageDlg('Вы действительно хотите выйти из режима

тестирования ?',mtConfirmation,[mbYes,mbNo],0) = mryes

then form2.Close;

end;

end.

ПРИЛОЖЕНИЕ 3

//Форма ввода вопросов

unit Unit3;

interface

uses

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

ExtCtrls, DBCtrls, StdCtrls, ComCtrls, Mask, Buttons;

type

TForm3 = class(TForm)

RadioGroup1: TRadioGroup;

DBMemo1: TDBMemo;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

DBEdit4: TDBEdit;

UpDown1: TUpDown;

Edit1: TEdit;

DBNavigator1: TDBNavigator;

Panel1: TPanel;

Label2: TLabel;

Label3: TLabel;

Label1: TLabel;

SpeedButton1: TSpeedButton;

procedure FormShow(Sender: TObject);

procedure SpeedButton1Click(Sender: TObject);

private

{Private declarations }

public

{(Sender: TObject);

begin

label3.caption: = inttostr(form1.Table1.recordcount);

end;

procedure TForm3.SpeedButton1Click(Sender: TObject);

begin

//выводит окно подтверждение на выход

if MessageDlg('Завершить ввод вопросов ?

',mtConfirmation,[mbYes,mbNo],0) = mryes

then form3.Close;

end;

end.

ПРИЛОЖЕНИЕ 4

//Форма выбора сложности

unit Unit4;

interface

uses

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

ComCtrls, StdCtrls, ExtCtrls;

type

TForm4 = class(TForm)

Button1: TButton;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

UpDown1: TUpDown;

UpDown2: TUpDown;

UpDown3: TUpDown;

Button2: TButton;

Panel1: TPanel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

Label3: TLabel;

Label2: TLabel;

Label1: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure Edit3Change(Sender: TObject);

procedure Edit4Change(Sender: TObject);

procedure Edit2Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

uses Unit1, Unit2;

{$R *.DFM}

procedure TForm4.Button2Click(Sender: TObject);

begin

form4.close;

end;

procedure TForm4.Button1Click(Sender: TObject);

var i,j,ss,d,n:integer; m:array[1..100] of integer;

begin

randomize;

ss: = 0; {кол записей в таб2}

form1.table1.filter: = 'level = 1'; {фильтр}

form1.table1.filtered: = true;

while ss<strtoint(edit2.text) do {пока кол-во ? < edit2}

begin

i: = random(form1.table1.recordcount);

form1.table1.first;

form1.table1.MoveBy(i); {переходж на i записей вперед}

d: = 0; {счетчик совпадений}

if ss> = 1 then

for n: = 1 to ss do

if m[n] = form1.table1.fields[0].AsInteger then d: = d+1;

if d = 0 then {то есть совпадений нет}

begin

form1.table2.append;

form1.table2.fields[1].asString: = form1.table1.fields[1].asString;

form1.table2.fields[2].asString: = form1.table1.fields[2].asString;

form1.table2.fields[3].asString: = form1.table1.fields[3].asString;

form1.table2.fields[4].asString: = form1.table1.fields[4].asString;

form1.table2.fields[5].asString: = form1.table1.fields[5].asString;

form1.table2.fields[6].asString: = form1.table1.fields[6].asString;

form1.table2.fields[7].asString: = form1.table1.fields[7].asString;

form1.table2.post;

inc(ss);

m[ss]: = form1.table1.fields[0].AsInteger;

end;

end;

form1.table1.filtered: = false;

ss: = 0;

form1.table1.filter: = 'level = 2';

form1.table1.filtered: = true;

while ss<strtoint(edit3.text) do

begin

i: = random(form1.table1.recordcount);

form1.table1.first;

form1.table1.MoveBy(i);

d: = 0;

if ss> = 1 then

for n: = 1 to ss do

if m[n] = form1.table1.fields[0].AsInteger then d: = d+1;

if d = 0 then

begin

form1.table2.append;

form1.table2.fields[1].asString: = form1.table1.fields[1].asString;

form1.table2.fields[2].asString: = form1.table1.fields[2].asString;

form1.table2.fields[3].asString: = form1.table1.fields[3].asString;

form1.table2.fields[4].asString: = form1.table1.fields[4].asString;

form1.table2.fields[5].asString: = form1.table1.fields[5].asString;

form1.table2.fields[6].asString: = form1.table1.fields[6].asString;

form1.table2.fields[7].asString: = form1.table1.fields[7].asString;

form1.table2.post;

inc(ss);

m[ss]: = form1.table1.fields[0].AsInteger;

end;

end;

form1.table1.filtered: = false;

ss: = 0;

form1.table1.filter: = 'level = 3';

form1.table1.filtered: = true;

while ss<strtoint(edit4.text) do

begin

i: = random(form1.table1.recordcount);

form1.table1.first;

form1.table1.MoveBy(i);

d: = 0;

if ss> = 1 then

for n: = 1 to ss do

if m[n] = form1.table1.fields[0].AsInteger then d: = d+1;

if d = 0 then

begin

form1.table2.append;

form1.table2.fields[1].asString: = form1.table1.fields[1].asString;

form1.table2.fields[2].asString: = form1.table1.fields[2].asString;

form1.table2.fields[3].asString: = form1.table1.fields[3].asString;

form1.table2.fields[4].asString: = form1.table1.fields[4].asString;

form1.table2.fields[5].asString: = form1.table1.fields[5].asString;

form1.table2.fields[6].asString: = form1.table1.fields[6].asString;

form1.table2.fields[7].asString: = form1.table1.fields[7].asString;

form1.table2.post;

inc(ss);

m[ss]: = form1.table1.fields[0].AsInteger;

end;

end;

form1.table1.filtered: = false;

form2.show;

form4.close;

end;

mShow(Sender: TObject);

begin

form1.table1.filter: = 'level = 1';

form1.table1.filtered: = true;

label8.Caption: = inttostr(form1.table1.recordcount);

form1.table1.filtered: = false;

form1.table1.filter: = 'level = 2';

form1.table1.filtered: = true;

label9.Caption: = inttostr(form1.table1.recordcount);

form1.table1.filtered: = false;

form1.table1.filter: = 'level = 3';

form1.table1.filtered: = true;

label10.Caption: = inttostr(form1.table1.recordcount);

form1.table1.filtered: = false;

end;

procedure TForm4.Edit3Change(Sender: TObject);

begin

if Edit2.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

if Edit3.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

if Edit4.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

edit3.text: = label9.caption;

end;

procedure TForm4.Edit4Change(Sender: TObject);

begin

if Edit2.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

if Edit3.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

if Edit4.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

edit4.text: = label10.caption;

end;

procedure TForm4.Edit2Change(Sender: TObject);

begin

if Edit2.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

if Edit3.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

if Edit4.Text = '' then Button1.Visible: = false

else Button1.Visible: = true;

edit2.text: = label8.caption;

end;

end.

ПРИЛОЖЕНИЕ 5

//Форма результатов

unit Unit5;

interface

uses

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

StdCtrls, ExtCtrls;

type

TForm5 = class(TForm)

Button1: TButton;

Panel1: TPanel;

Label3: TLabel;

Label2: TLabel;

Label4: TLabel;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

ПРИЛОЖЕНИЕ 6

{$R *.DFM}

procedure TForm5.Button1Click(Sender: TObject);

begin

form5.close;

end;

end.

//Форма ввода пароля

unit Unit6;

interface

uses

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

StdCtrls, ExtCtrls;

type

TForm6 = class(TForm)

Edit1: TEdit;

Button1: TButton;

Panel1: TPanel;

Label1: TLabel;

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{Private declarations }

public

{Public declarations }

end;

var

Form6: TForm6;

implementation

uses Unit3, Unit5;

{$R *.DFM}

procedure TForm6.Button1Click(Sender: TObject);

begin

if edit1.text = '' then form3.show;

form6.close;

end;

procedure TForm6.FormCreate(Sender: TObject);

begin

edit1.text: = '';

end;

end

ПРИЛОЖЕНИЕ 7

//Форма ввода данных

unit Unit7;

interface

uses

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

StdCtrls, ExtCtrls;

type

TForm7 = class(TForm)

Edit1: TEdit;

Button1: TButton;

Panel1: TPanel;

Label1: TLabel;

procedure Button1Click(Sender: TObject);

procedure Edit1Change(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form7: TForm7;

implementation

uses Unit4;

{$R *.DFM}

procedure TForm7.Button1Click(Sender: TObject);

begin

form4.show;

form7.close;

end;

procedure TForm7.Edit1Change(Sender: TObject);

begin

if Form7.Edit1.Text = ''then Button1.Visible: = False

else Button1.Visible: = True;

end;

end

ПРИЛОЖЕНИЕ 8

//Форма о программе

unit Unit8;

interface

uses

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

Dialogs, StdCtrls, Buttons, ExtCtrls;

type

TForm8 = class(TForm)

Panel1: TPanel;

Image1: TImage;

SpeedButton1: TSpeedButton;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

procedure SpeedButton1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form8: TForm8;

implementation

{$R *.dfm}

procedure TForm8.SpeedButton1Click(Sender: TObject);

begin

Form8.Close;

end;

end

Размещено на Allbest.ru

...

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

  • Delphi как программный продукт с феноменальными характеристиками. Компилятор в машинный код. Объектно-ориентированная модель программных компонентов. Масштабируемые средства для построения баз данных. Программный код.

    контрольная работа [27,8 K], добавлен 30.07.2007

  • Предмет объектно-ориентированного программирования и особенности его применения в средах Паскаль, Ада, С++ и Delphi. Интегрированная среда разработки Delphi: общее описание и назначение основных команд меню. Процедуры и функции программы Delphi.

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

  • Разработка программы обработки типизированных файлов с кодом на языке Object Pascal, с использованием компонентов Delphi для ввода и вывода данных. Разработка экранных форм и алгоритма программы. Описание программных модулей и инструкция оператору.

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

  • Этапы создания обучающей программы "Трюки и Эффекты в Delphi" в интегрированной среде Borland Delphi 7 и СУБД MS Access 2010. Главное меню и организация базы данных MS Access. Основные характеристики и состав основных модулей. Описание программы.

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

  • Основные операции с матрицами. Проектирование объектно-ориентированного модуля для работы с матрицами в среде Delphi 7. Разработка программы, которая позволяет выполнять различные действия над матрицами. Описание интерфейса программы, исходный код модуля.

    курсовая работа [1014,2 K], добавлен 15.01.2013

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

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

  • Особенности создания программы "Файловый менеджер" в среде объектно-ориентированного программирования Delphi. Назначение и основные функции программы, формулировка задачи. Описание программы, использованные компоненты, интерфейс и порядок применения.

    контрольная работа [1,3 M], добавлен 19.06.2012

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

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

  • Изучение программы базовой системы ввода-вывода (BIOS) и её настроек. Разработка компьютерной обучающей программы-тренажера "Настройка BIOS" в объектно-ориентированной среде Delphi. Тестирование данного программного продукта и экономические затраты.

    дипломная работа [54,5 K], добавлен 09.10.2013

  • Новые тенденции развития СУБД и областей их применения. Структурные элементы базы данных. Объектно-ориентированная модель программных компонентов. Формы, модули и метод разработки "Two-Way Tools". Масштабируемые средства для построения баз данных.

    дипломная работа [589,5 K], добавлен 16.12.2013

  • Проектирование программы в среде Delphi для тестирования знаний студентов по программированию, с выводом оценки по окончанию тестирования. Разработка экранных форм и алгоритма программы. Описание программных модулей. Алгоритм процедуры BitBtn1Click.

    курсовая работа [365,0 K], добавлен 18.05.2013

  • Анализ технического задания, разработка программных модулей, средств тестирования и руководство пользователя. Масштабируемые средства для построения баз данных. Расчет эффективности программы "Автоматизированное рабочее место специалиста ООО "Бравида".

    дипломная работа [1,9 M], добавлен 24.07.2014

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

    реферат [21,0 K], добавлен 13.01.2015

  • Особенности разработки приложений для операционной системы с помощью императивного, структурированного, объектно-ориентированного языка программирования Delphi. Формальное начало программы. Выделение конца программного блока. Листинг и описание программы.

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

  • Характеристика функциональных возможностей разрабатываемой программы в среде Delphi для регистрации абитуриентов. Описание алгоритма и структуры данной программы. Поиск данных в базе по заданным параметрам. Описание модулей и листинг программы.

    курсовая работа [801,5 K], добавлен 19.07.2011

  • Понятие баз данных и принципы проектирования информационных систем. Разработка программы для отслеживания финансовой стороны работы компании в среде Delphi 7. Создание таблиц и схемы данных. Разработка клиентского приложения и процедуры добавления данных.

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

  • Разработка программы, моделирующей работу сложного механизма, состоящего из двух кривошипов, шатунов и ползуна, в среде Delphi 7. Описание алгоритма работы программы и расчет ускорения точек механизма. Обзор уравнения сложности и руководства пользователя.

    курсовая работа [143,3 K], добавлен 07.08.2013

  • Delphi - среда быстрой разработки, в которой в качестве языка программирования используется типизированный объектно-ориентированный язык Delphi. Варианты программного пакета. Особенности работы, вид экрана после запуска. Описание структуры программы.

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

  • Анализ исходных данных. Определение структуры модуля для работы файлом. Разработка объектно-ориентированного приложения, использующего массив объектов, в среде Delphi. Модульная структура программного комплекса. Процедура сортировки методом вставки.

    курсовая работа [2,2 M], добавлен 20.09.2014

  • Разработка объектно-ориентированной модели информационной подсистемы учета студентов университета во время экзаменационной сессии с помощью программы Rational Rose 2000, с использованием языка UML. Порядок генерации программного кода на языке С++.

    курсовая работа [689,9 K], добавлен 21.06.2011

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