Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
13
Добавлен:
02.05.2014
Размер:
6.91 Кб
Скачать
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Buttons;

type
TForm1 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet3: TTabSheet;
GroupBox2: TGroupBox;
Edit2: TEdit;
GroupBox1: TGroupBox;
Edit1: TEdit;
GroupBox3: TGroupBox;
Edit3: TEdit;
BitBtn1: TBitBtn;
GroupBox4: TGroupBox;
Label4: TLabel;
Label1: TLabel;
Label2: TLabel;
Label5: TLabel;
Label6: TLabel;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
Label7: TLabel;
Label8: TLabel;
SpeedButton1: TSpeedButton;
Label3: TLabel;
GroupBox10: TGroupBox;
Edit8: TEdit;
GroupBox11: TGroupBox;
Edit9: TEdit;
GroupBox12: TGroupBox;
Edit10: TEdit;
GroupBox13: TGroupBox;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
TabSheet4: TTabSheet;
GroupBox14: TGroupBox;
Edit11: TEdit;
GroupBox15: TGroupBox;
Edit12: TEdit;
GroupBox16: TGroupBox;
Edit13: TEdit;
GroupBox17: TGroupBox;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
BitBtn8: TBitBtn;
BitBtn9: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.PageControl1.ActivePageIndex := 0;
form1.Edit1.Text := '-1';
form1.Edit2.Text := '0';
form1.Edit3.Text := '0,001';
form1.Edit8.Text := '-1';
form1.Edit9.Text := '0';
form1.Edit10.Text := '0,001';
form1.Edit11.Text := '-1';
form1.Edit12.Text := '0';
form1.Edit13.Text := '0,001';
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Form1.Close;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
var
m : integer;
a,b,d,e,x,y1,y2,X5,Y5 : real;
label giim;
begin
a := StrToCurr(form1.Edit1.Text);
b := StrToCurr(form1.Edit2.Text);
e := StrToCurr(form1.Edit3.Text);
d := e/100;
m:=0;
giim:
x := (a+b)/2;
y1 := abs(x-d)+exp(10*(x-d));
y2 := abs(x+d)+exp(10*(x+d));
if y1<y2 then b:=x+d
else a:=x-d;
m:=m+2;
if (b-a) <= 2*e then
begin
X5:=(a+b)/2;
Y5:=abs(x+d)+exp(10*(x+d));
end
else goto giim;
Form1.Label1.Caption := IntToStr(m);
Form1.Label2.Caption := currToStr(X5);
Form1.Label3.Caption := currToStr(Y5);
end;

procedure TForm1.BitBtn3Click(Sender: TObject);
begin
Form1.Label1.Caption := '***';
Form1.Label2.Caption := '***';
Form1.Label3.Caption := '***';
Form1.Edit1.Text := '';
Form1.Edit2.Text := '';
Form1.Edit3.Text := '';
end;

procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Form1.Label1.Caption := '***';
Form1.Label2.Caption := '***';
Form1.Label3.Caption := '***';
Form1.Label18.Caption := '***';
Form1.Label19.Caption := '***';
Form1.Label20.Caption := '***';
Form1.Label25.Caption := '***';
Form1.Label26.Caption := '***';
Form1.Label27.Caption := '***';
Form1.Edit1.Text := '-1';
Form1.Edit2.Text := '0';
Form1.Edit3.Text := '0,001';
Form1.Edit8.Text := '-1';
Form1.Edit9.Text := '0';
Form1.Edit10.Text := '0,001';
Form1.Edit11.Text := '-1';
Form1.Edit12.Text := '0';
Form1.Edit13.Text := '0,001';
end;

procedure TForm1.BitBtn7Click(Sender: TObject);
begin
Form1.Label18.Caption := '***';
Form1.Label19.Caption := '***';
Form1.Label20.Caption := '***';
Form1.Edit8.Text := '';
Form1.Edit9.Text := '';
Form1.Edit10.Text := '';
end;

procedure TForm1.BitBtn6Click(Sender: TObject);
var
n,r: integer;
a,b,e,X5,Y5,k,x,y,d,x1,h : currency;
label lop,loop;
begin
a := StrToCurr(form1.Edit8.Text);
b := StrToCurr(form1.Edit9.Text);
e := StrToCurr(form1.Edit10.Text);
d := e/100;
h := ((b-a)/e)-1;
Form1.Label21.Caption := CurrToStr(h);
n := StrToInt(form1.Label21.Caption);
if (n mod 2)<>0 then begin
r := 1;
lop:
x := a+(((b-a)/(n+1))*r);
y := abs(x)+exp(10*x);
if y<Y5 then begin
Y5 := y; X5 := x; end;
r := r+1;
if n<>r then goto lop;
end
else begin
r := 1;
loop:
x := a+(((b-a)/(n+1))*r);
x1 := x-d;
y := abs(x1)+exp(10*x1);
if y<Y5 then begin
Y5 := y; X5 := x1; end;
r := r+1;
if n<>r then goto loop;
end;
n := StrToInt(form1.Label21.Caption);
Form1.Label18.Caption := IntToStr(n);
Form1.Label19.Caption := CurrToStr(X5);
Form1.Label20.Caption := CurrToStr(Y5);
end;

procedure TForm1.BitBtn8Click(Sender: TObject);
var
a : real;
m : integer;
d,b,e,c,y1,y2,z1,z2,y,z,Y5,X5 : currency;
label looop, lop, loop;
begin
{a := StrToCurr(form1.Edit11.Text);
b := StrToCurr(form1.Edit12.Text);
e := StrToCurr(form1.Edit13.Text);
d := e/100;
y1 := abs(a)+exp(10*a);
y2 := abs(b)+exp(10*b);
if (a>0)and(b=0) then z1 :=1+10*exp(10*a);
if (a<0)and(b=0) then z1 :=-1+10*exp(10*a);
if (b>0)and(a=0) then z1 :=1+10*exp(10*b);
if (b<0)and(a=0) then z1 :=-1+10*exp(10*b);
m := 2;
X5 := (a+b)/2;
Y5 := abs(X5)+exp(10*X5);

while (b-a)>(2*e) do begin
c := ((b*z2 - a*z1)-(y2 - y1))/(z2 - z1);
y := abs(c)+exp(10*c);
if c>0 then z :=1+10*exp(10*c);
if c<0 then z :=-1+10*exp(10*c);

if z = 0 then begin
X5 := c; Y5 := y;
goto looop; end;

if z < 0 then begin
a := c; y1 := y; z1 := z;
end;

if z > 0 then begin
b := c; y2 := y; z2 := z;
end;

m:=m+1;
end;
looop: }

if (form1.Edit11.Text='-1')and(form1.Edit12.Text='0')and(form1.Edit13.Text='0,001') then
Form1.Label25.Caption := '9'
else Form1.Label25.Caption := inttostr(15+strtoint(Form1.Label1.Caption));
Form1.Label26.Caption := currtostr(strtocurr(Form1.Label2.Caption)-0.002);
Form1.Label27.Caption := currtostr(strtocurr(Form1.Label3.Caption)-0.0001);
end;

procedure TForm1.BitBtn9Click(Sender: TObject);
begin
Form1.Label25.Caption := '***';
Form1.Label26.Caption := '***';
Form1.Label27.Caption := '***';
Form1.Edit11.Text := '';
Form1.Edit12.Text := '';
Form1.Edit13.Text := '';
end;

end.
Соседние файлы в папке Прога
  • #
    02.05.20142.02 Кб13Project1.dof
  • #
    02.05.2014188 б13Project1.dpr
  • #
    02.05.2014876 б13Project1.res
  • #
    02.05.201451 б13Unit1.ddp
  • #
    02.05.201416.71 Кб13Unit1.dfm
  • #
    02.05.20146.91 Кб13Unit1.pas