У вас вопросы?
У нас ответы:) SamZan.net

12 Министерство общего и профессионального образования Российской Федерации Государст

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.6.2025

12

44.2016.00-12

Министерство общего и профессионального

образования Российской Федерации

Государственный Университет Аэрокосмического

Приборостроения

РЕШЕНИЕ НЕЛИНЕЙНЫХ И ТРАНСЦЕНДЕНТНЫХ УРАВНЕНИЙ КОМБИНИРОВАННЫМ МЕТОДОМ СЕКУЩИХ - ХОРД.

ТЕКСТ ПРОГРАММЫ

И 44.2016.00-12

Руководитель

Ст. преподаватель

Пятлина Е.О.

Нормоконтроллер

Выполнил

студент гр.4911

Степанов О.Ю.

САНКТ-ПЕТЕРБУРГ

2000


Аннотация

В данном программном документе представлен текст программы, реализующей решение нелинейных и трансцендентных уравнений методом секущих - хорд. Текст включает в себя текст програмных модулей functions (искуственно созданый) и progr (модуль обработки главного окна программы). Модуль Functions состоит из функций расчитывающих значени самих функций (func1, аunc2, func3), значения производных функий (func_proizv1, func_proizv2, func_proizv3), функция возведения любого чила в любую степень (stepp), а также функция описывающая алгоритм нахождения приближений к искомому корню (f). Модуль progr содержит в себе процедуры обработки обьектов главного окна программы. Также в листинге описаны модули работы с окнами предназначенными для обработки  определенных математических функций.

Программа написана на языке Object Pascal., операционная среда Wsndows.


Текст модуля “functions”.

unit functions;

interface

uses

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

 ExtCtrls, StdCtrls;

  type

   func=function(var x:real):real;

  var

   sv_chlen:real;

 function f(var a,b:real; f1,f2:func):real;

 function func1(var x:real):real;

 function func_proizv1(var x:real):real;

 function func_proizv2(var x:real):real;

 function func2(var x:real):real;

 function func_proizv3(var x:real):real;

 function func3(var x:real):real;

 function stepp(i,j:real):real;

implementation

 function f(var a,b:real; f1,f2:func):real;

  var

   x1,x2:real;

 begin

  x1:=a-((b-a)*f1(a))/(f1(b)-f1(a));

  x2:=a-(f1(a))/(f2(a));

  a:=x1;

  b:=x2;

  f:=a-b;

 end;

{$F+}

 function func_proizv1(var x:real):real;

  var

   y:real;

 begin

  y:=stepp(2,x)*ln(2)-4;

  func_proizv1:=y;

 end;

{$F-}

{$F+}

 function func_proizv2(var x:real):real;

  var

   y:real;

 begin

  y:=3*stepp(x,2)+2*x-1;

  func_proizv2:=y;

 end;

{$F-}

{$F+}

 function func_proizv3(var x:real):real;

  var

   y:real;

 begin

  y:=1-cos(x);

  func_proizv3:=y;

 end;

{$F-}

 function stepp(i,j:real):real;

  var

   z:real;

 begin

  z:=exp(j*ln(i));

  stepp:=z;

 end;

{$F+}

 function func1(var x:real):real;

  var

   y:real;

 begin

  y:=stepp(2,x)-4*x;

  func1:=y;

 end;

{$F-}

{$F+}

 function func2(var x:real):real;

  var

   y:real;

 begin

  y:=stepp(x,3)+stepp(x,2)-x-1;

  func2:=y;

 end;

{$F-}

{$F+}

 function func3(var x:real):real;

  var

   y:real;

 begin

  y:=x-sin(x)-sv_chlen;

  func3:=y;

 end;

{$F-}

end.


Текст модуля “progr”.

unit progr;

interface

uses

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

 StdCtrls, ExtCtrls, Menus;

type

 TMain = class(TForm)

   GroupBox1: TGroupBox;

   F1: TRadioButton;

   F2: TRadioButton;

   Fuvktion_f: TButton;

   Button1: TButton;

   MainMenu1: TMainMenu;

   N1: TMenuItem;

   N2: TMenuItem;

   F3: TRadioButton;

   procedure Fuvktion_fClick(Sender: TObject);

   procedure Button1Click(Sender: TObject);

   procedure N2Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Main: TMain;

implementation

uses f1, f2, about, f3;

{$R *.DFM}

procedure TMain.Fuvktion_fClick(Sender: TObject);

begin

 if f1.Checked=true then

  begin

   f1_form.show;

   f1_form.Label3.caption:='';

   f1_form.x1.text:='';

   f1_form.x2.text:='';

   f1_form.e.text:='';

   f1_form.Label3.caption:='';

  end;

 if f2.Checked=true then

  begin

   f2_form.show;

   f2_form.Label3.caption:='';

  end;

 if f3.Checked=true then

  begin

   f3_form.show;

   f3_form.x1.text:='';

   f3_form.x2.text:='';

   f3_form.e.text:='';

   f3_form.a.text:='';

   f3_form.Label6.caption:='';

  end;

end;

procedure TMain.Button1Click(Sender: TObject);

begin

close;

end;

procedure TMain.N2Click(Sender: TObject);

begin

aboutbox.show;

end;

end.


Текст модулей “f1”, “f2”, “f3”.

unit f1;

interface

uses

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

 ExtCtrls, StdCtrls, functions;

type

 TF1_form = class(TForm)

   Bevel1: TBevel;

   graf: TImage;

   x1: TEdit;

   x2: TEdit;

   Label1: TLabel;

   Label2: TLabel;

   OK_f1: TButton;

   Label4: TLabel;

   Label3: TLabel;

   Label5: TLabel;

   e: TEdit;

   close_f1: TButton;

   procedure OK_f1Click(Sender: TObject);

   procedure close_f1Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 F1_form: TF1_form;

implementation

{$R *.DFM}

procedure TF1_form.OK_f1Click(Sender: TObject);

var

e,znach,a,b:real;

s1,s2,s3,s:string;

varkod1,varkod2,varkod3:integer;

begin

s1:=f1_form.x1.text;

s2:=f1_form.x2.text;

s3:=f1_form.e.text;

val(s1,a,varkod1);

val(s2,b,varkod2);

val(s3,e,varkod3);

znach:=f(a,b,func2,func_proizv2);

while znach>e do

  znach:=f(a,b,func2,func_proizv2);

  znach:=(a+b)/2;

str(znach,s);

f1_form.Label3.caption:=s;

end;

procedure TF1_form.close_f1Click(Sender: TObject);

begin

close;

end;

end.

unit f2;

interface

uses

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

 ExtCtrls, StdCtrls, functions;

type

 Tf2_form = class(TForm)

   bevel2: TBevel;

   graf2: TImage;

   Label1: TLabel;

   Label2: TLabel;

   ok_f2: TButton;

   Label3: TLabel;

   Label4: TLabel;

   close_f2: TButton;

   procedure ok_f2Click(Sender: TObject);

   procedure close_f2Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 f2_form: Tf2_form;

implementation

{$R *.DFM}

procedure Tf2_form.ok_f2Click(Sender: TObject);

const

 e=0.0001;

var

znach,a,b:real;

s:string;

begin

a:=0; b:=0.5;

znach:=f(a,b,func1,func_proizv1);

while znach>e do

  znach:=f(a,b,func1,func_proizv1);

  znach:=(a+b)/2;

str(znach,s);

f2_form.Label3.caption:=s;

end;

procedure Tf2_form.close_f2Click(Sender: TObject);

begin

close;

end;

end.

unit f3;

interface

uses

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

 StdCtrls, ExtCtrls, functions;

type

 TF3_form = class(TForm)

   Bevel1: TBevel;

   Image1: TImage;

   x1: TEdit;

   e: TEdit;

   x2: TEdit;

   a: TEdit;

   ok_f3: TButton;

   close_f3: TButton;

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Label4: TLabel;

   Label5: TLabel;

   Label6: TLabel;

   procedure close_f3Click(Sender: TObject);

   procedure ok_f3Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 F3_form: TF3_form;

implementation

uses f1;

{$R *.DFM}

procedure TF3_form.close_f3Click(Sender: TObject);

begin

close;

end;

procedure TF3_form.ok_f3Click(Sender: TObject);

var

e,znach,a,b:real;

s1,s2,s3,s4,s:string;

varkod1,varkod2,varkod3,varkod4:integer;

begin

s1:=f3_form.x1.text;

s2:=f3_form.x2.text;

s3:=f3_form.e.text;

s4:=f3_form.a.text;

val(s1,a,varkod1);

val(s2,b,varkod2);

val(s3,e,varkod3);

val(s4,sv_chlen,varkod4);

znach:=f(a,b,func3,func_proizv3);

while znach>e do

  znach:=f(a,b,func3,func_proizv3);

  znach:=(a+b)/2;

str(znach,s);

f3_form.Label6.caption:=s;

end;

end.


Лист регистрации изменений

Номера страниц

Всего страниц в документе

№ документа

Входящий номер сопроводительного документа

подпись

Дата

изменения

Измененных

замененных

новых

аннулированных




1. Технологический Альянс
2. Значение Урала как важного экономического региона страны
3. DOS при этом возможен обход установленных администратором ограничений
4. 12 МЕСЯЦЕВ НА НОВЫЙ ЛАД Персонажи- 1
5. Характеристика уровня жизни населения Тверской области
6. РЕФЕРАТ дисертації на здобуття наукового ступеня кандидата архітектури
7. 12 поточна редакцiя вiд 12
8. 1 Определение сущность и значение статистической отчетности7
9. История Югозапада Москвы
10. 3 БГТУ 03 17 06 15 11 14 истов Лит