Автор работы: Пользователь скрыл имя, 09 Января 2012 в 15:43, курсовая работа
Автоматизированная экспертная система — компьютерная программа, способная заменить специалиста-эксперта в разрешении проблемной ситуации. Экспертные системы начали разрабатываться исследователями искусственного интеллекта в 1970-х годах, а в 1980-х получили коммерческое подкрепление.
ВВЕДЕНИЕ 3
РАЗДЕЛ 1. СРЕДА ПРОГРАММИРОВАНИЯ 5
РАЗДЕЛ 2. СТРУКТУРА ПРОГРАММЫ 6
РАЗДЕЛ 3. ПРОГРАММНЫЙ КОД 7
3.1. Код файла Unit1.pas 7
3.2. Код файла Unit4.pas 10
3.3. Код файла Unit5.pas 12
3.4. Код файла Unit3.pas 17
3.5. Код файла Unit6.pas 20
ЗАКЛЮЧЕНИЕ 24
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 25
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender:
TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
sch_1, razrab_1, sirje_1, vipuc_1, prod_1, rash_1, dohod_1, prib_1: real;
implementation
uses Unit2, Unit1;
{$R *.dfm}
procedure TForm4.Button2Click(Sender: TObject);
label
Goto_b, Goto_me;
begin
sch_1:= 1;
if edit1.Text = '' then
begin
showmessage
('Вы не ввели стоимость
goto Goto_b;
end else
if edit2.Text = '' then
begin
showmessage ('Вы не ввели сумму сырья на 1 телефон!');
goto Goto_b;
end else
if edit3.Text = '' then
begin
showmessage
('Вы не ввели количество
goto Goto_b;
end else
begin
razrab_1:= StrToFloat (edit1.Text);
sirje_1:= StrToFloat (edit2.Text);
vipuc_1:= StrToFloat
(edit3.Text);
Goto_me:
prod_1:= (prod/vipuch+0.45)*vipuc_1; //Продано альт. тел. = (продано телефонов/выпущено телефонов + 0,45) * выпущено альт.тел.;
rash_1:= (sirje_1*vipuc_1)*sch_1; //Расходы = старые расходы + разработка + сырье на 1 альт. тел. * выпущено альт.тел.;
dohod_1:= (2.25*sirje_1*prod_1)*sch_1; //Доходы = старые доходы + 2,25 * сырье на 1 альт. тел.* продано альт. тел.;
prib_1:= dohod+dohod_1-rash-razrab_1-
if prib_1<0 then
begin
sch_1:= sch_1+1;
goto Goto_me;
end;
label9.Caption:= FloatToStr (dohod_1); // присваивание данных переменным
label10.Caption:= FloatToStr (rash_1);
label11.Caption:= FloatToStr (prib_1);
Label13.Caption:= FloatToStr (sch_1) + ' мес.';
end;
Goto_b:
end;
procedure TForm4.Button1Click(Sender: TObject);
begin
edit1.Text:= '';
edit2.Text:= '';
edit3.Text:= '';
label9.Caption:= '';
label10.Caption:= '';
label11.Caption:= '';
Label13.Caption:= '';
form4.Close;
form2.Show;
end;
procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);
begin
edit1.Text:= '';
edit2.Text:= '';
edit3.Text:= '';
label9.Caption:= '';
label10.Caption:= '';
label11.Caption:= '';
Label13.Caption:= '';
form2.Show;
end;
end.
3.3. Код файла Unit5.pas
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm5 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Button1: TButton;
Button2: TButton;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
sch_2, tv_2, radio_2, internet_2, pech_2, list_2, kol_tv_2, kol_radio_2, kol_internet_2, kol_pech_2, kol_list_2, rash_rek_2, rash_2, dohod_2, prib_2, k1, k2, k3, k4, k5: real;
implementation
uses Unit2, Unit1;
{$R *.dfm}
procedure TForm5.Button1Click(Sender: TObject);
begin
edit1.Text:= '';
edit2.Text:= '';
edit3.Text:= '';
edit4.Text:= '';
edit5.Text:= '';
edit6.Text:= '';
edit7.Text:= '';
edit8.Text:= '';
edit9.Text:= '';
edit10.Text:= '';
label16.Caption:= '';
label17.Caption:= '';
label18.Caption:= '';
label20.Caption:= '';
form5.Close;
form2.Show;
end;
procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction);
begin
edit1.Text:= '';
edit2.Text:= '';
edit3.Text:= '';
edit4.Text:= '';
edit5.Text:= '';
edit6.Text:= '';
edit7.Text:= '';
edit8.Text:= '';
edit9.Text:= '';
edit10.Text:= '';
label16.Caption:= '';
label17.Caption:= '';
label18.Caption:= '';
label20.Caption:= '';
form2.Show;
end;
procedure TForm5.Button2Click(Sender: TObject);
label
Goto_c, Goto_mec;
begin
sch_2:=1;
if edit1.Text = '' then
begin
showmessage ('Вы не ввели срок показа рекламы на телевидении!');
goto Goto_c;
end else
if edit2.Text = '' then
begin
showmessage ('Вы не ввели срок действия рекламы на радио!');
goto Goto_c;
end else
if edit3.Text = '' then
begin
showmessage ('Вы не ввели срок показа рекламы в интернете!');
goto Goto_c;
end else
if edit4.Text = '' then
begin
showmessage
('Вы не ввели срок
goto Goto_c;
end else
if edit5.Text = '' then
begin
showmessage
('Вы не ввели срок
goto Goto_c;
end else
if edit6.Text = '' then
begin
showmessage
('Вы не ввели
goto Goto_c;
end else
if edit7.Text = '' then
begin
showmessage
('Вы не ввели
goto Goto_c;
end else
if edit8.Text = '' then
begin
showmessage ('Вы не ввели кол-во баннеров в неделю!');
goto Goto_c;
end else
if edit9.Text = '' then
begin
showmessage ('Вы не ввели кол-во изданий в неделю!');
goto Goto_c;
end else
if edit10.Text = '' then
begin
showmessage ('Вы не ввели кол-во листовок в неделю!');
goto Goto_c;
end else
begin
tv_2:= StrToFloat (edit1.Text);
radio_2:= StrToFloat (edit2.Text);
internet_2:= StrToFloat (edit3.Text);
pech_2:= StrToFloat (edit4.Text);
list_2:= StrToFloat (edit5.Text);
kol_tv_2:= StrToFloat (edit6.Text);
kol_radio_2:= StrToFloat (edit7.Text);
kol_internet_2:= StrToFloat (edit8.Text);
kol_pech_2:= StrToFloat (edit9.Text);
kol_list_2:= StrToFloat
(edit10.Text);
if (tv_2 = 0) or (tv_2 < 0) = true then
begin
showmessage ('Вы не правильно ввели
срок показа рекламы на
goto Goto_c;
end else
if (radio_2 = 0) or (radio_2 < 0) = true then
begin
showmessage ('Вы не правильно ввели
срок действия рекламы на
goto Goto_c;
end else
if (internet_2 = 0) or (internet_2 < 0) = true then
begin
showmessage ('Вы не правильно ввели
срок показа рекламы в
goto Goto_c;
end else
if (pech_2 = 0) or (pech_2 < 0) = true then
begin
showmessage ('Вы не правильно ввели срок опубликования рекламы в печатных изданиях!');
goto Goto_c;
end else
if (list_2 = 0) or (list_2 < 0) = true then
begin
showmessage ('Вы не правильно ввели срок опубликования рекламы на листовках!');
goto Goto_c;
end else
begin
kol_tv_2:= StrToFloat (edit6.Text);
kol_radio_2:= StrToFloat (edit7.Text);
kol_internet_2:= StrToFloat (edit8.Text);
kol_pech_2:= StrToFloat (edit9.Text);
kol_list_2:= StrToFloat
(edit10.Text);
Goto_mec:
rash_rek_2:= (7*14000*tv_2*kol_tv_2+7000*
rash_2:= rash+rash_rek_2;
//Расходы = старые расходы
+ расходы на рекламу;
if tv_2<=2 then
k1:= 0.1 else
if ((tv_2>=3) and (tv_2<=5)) = true then
k1:= 0.18 else
if ((tv_2>=6) and (tv_2<=8)) = true then
k1:= 0.26 else
if (tv_2>=9) then
k1:=
0.35;
if radio_2<=2 then
k2:= 0.06 else
if ((radio_2>=3) and (radio_2<=5)) = true then
k2:= 0.1 else
if ((radio_2>=6) and (radio_2<=8)) = true then
k2:= 0.14 else
if radio_2>=9 then
k2:=
0.18;
if internet_2<=2 then
k3:= 0.04 else
if ((internet_2>=3) and (internet_2<=5)) = true then
Информация о работе Разработка автоматизированной системы для рекламной фирмы