Визначення площі між функціями інтегралом за методом трапеції на мові Pascal

Зміст

1. Постановка задачі

2. Математичний опис рішення задачі

3. Алгоритм програми

4. Лістинг програми

5. Контрольний приклад

Список використаної літератури

Постановка задачі

Скласти програму на мові Pascal розрахунку за методом трапецій площі між графіками функцій F1(x) = cos x2 + 1 i F2(x) = 2x^2 з точністю е = 0,0001.

2. Математичний опис рішення задачі

Розрахунок за методом трапецій площі між графіками функцій F1(x) = cos x2 + 1 i F2(x) = 2x^2 (рис.1) здійснюється вирішенням визначеного інтегралу > >, який саме і визначає площі під графіками. За властивістю інтегралів > > , тому в якості підінтегральної функції ми беремо функцію F(x) = cos x2 + 1 - 2x^2

Рис.1.

Саме метод трапеції реалізований на мові Pascal у наступному фрагменту програми, у якому для розрахунків використано цикл із заздалегідь визначеним числом повторень:

h:=(b-a)/n;

yp:=0;

x:=a;

for i:=1 to n-1 do

begin

x:=x+h;

yp:=yp+(cos(sqr(x))+1-exp(sqr(x)*ln(2)));

end;

yn:=cos(sqr(a))+1-exp(sqr(a)*ln(2));

yk:=cos(sqr(b))+1-exp(sqr(b)*ln(2));

s:=((yk+yn)/2+yp)*h;

де,

n – кількість відрізків, на які розбивається дільниця інтегрування;

i – допоміжна змінна циклу;

a – початкова межа інтегрування;

b – кінцева межа інтегрування;

h – довжина відрізку інтегрування;

yn – значення підінтегральної функції в початкової точці (точка а);

yk – значення підінтегральної функції в кінцевої точці (точка а);

yp – одне з проміжних значень підінтегральної функції;

s – потрібне значення визначеного інтегралу (площа) за методом трапецій.

3. Алгоритм програми

Алгоритм програми наведено на рис.2.

0100090000031602000002009601000000009601000026060f002203574d4643010000000000010015670000000001000000000300000000000000030000010000006c0000000000000000000000350000006f000000000000000000000089350000fa3f000020454d4600000100000300001000000002000000000000000000000000000000c0120000131a0000cb0000001b010000000000000000000000000000f818030078510400160000000c000000180000000a0000001000000000000000000000000900000010000000a60c00001d0f0000520000007001000001000000a4ffffff00000000000000000000000090010000000000cc04400022430061006c006900620072006900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001100c09a110010000000249e1100a49b1100524f6032249e11001c9b1100100000008c9c1100089e1100244f6032249e11001c9b110020000000076f2e311c9b1100249e110020000000ffffffffec34ee00826f2e31ffffffffffff0180ffff01803fff0180ffffffff0000000000080000000800004300000001000000000000005802000025000000552e9001cc08020f0502020204030204ef0200a07b20004000000000000000009f00000000000000430061006c0069006200720000000000430065006e007400750072007900200047006f00509b1100ca39273108000000010000008c9b11008c9b1100087a253108000000b49b1100ec34ee006476000800000000250000000c00000001000000250000000c00000001000000250000000c00000001000000120000000c00000001000000180000000c0000000000000254000000540000000000000000000000350000006f0000000100000055558740a0ab87400000000057000000010000004c000000040000000000000000000000a60c00001d0f000050000000200000003600000046000000280000001c0000004744494302000000ffffffffffffffffa60c00001e0f0000000000004600000014000000080000004744494303000000250000000c0000000e000080250000000c0000000e0000800e000000140000000000000010000000140000000400000003010800050000000b0200000000050000000c0271020b02040000002e0118001c000000fb02f1ff0000000000009001000000cc0440002243616c6962726900000000000000000000000000000000000000000000000000040000002d010000040000002d010000040000002d0100000400000002010100050000000902000000020d000000320a0e00000001000400000000000b02720220ef09001c000000fb020300010000000000bc02000000cc0102022253797374656d0000000000000000000000000000000000000000000000000000040000002d010100040000002d010100030000000000

Рис.2. Алгоритм програми

4. Лістинг програми

Лістинг програми наведений нижче:

unit Unit1;

interface

uses

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

Dialogs, ExtCtrls, StdCtrls;

type

TForm1 = class(TForm)

StaticText1: TStaticText;

StaticText2: TStaticText;

StaticText3: TStaticText;

StaticText4: TStaticText;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

Button1: TButton;

Button2: TButton;

Image1: TImage;

Button3: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var a,b,s,h,x,yp,yn,yk:real; i,n:integer;

begin

a:=StrtoFloat(Edit1.Text);

b:=StrtoFloat(Edit2.Text);

n:=StrtoInt(Edit3.Text);

h:=(b-a)/n;

yp:=0;

x:=a;

for i:=1 to n-1 do

begin

x:=x+h;

yp:=yp+(cos(sqr(x))+1-exp(sqr(x)*ln(2)));

end;

yn:=cos(sqr(a))+1-exp(sqr(a)*ln(2));

yk:=cos(sqr(b))+1-exp(sqr(b)*ln(2));

s:=((yk+yn)/2+yp)*h;

Edit4.Text:=copy(FloattoStr(s),1,6)

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Edit1.Text:='';

Edit2.Text:='';

Edit3.Text:='';

Edit4.Text:='';

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

close

end;

end.

5. Контрольний приклад

У перше поле вводимо початкове значення відрізку інтегрування, наприклад, 0;

у друге поле вводимо кінцеве значення відрізку інтегрування, наприклад, 0,5 (причому десяткову частину дробу відділяємо комою); кількість меж, на які буде розбито відрізок інтегрування вводимо у трете поле, наприклад, 10000 (чім більше, тім точніше результат); натискаємо кнопку Розрахувати. Розрахована площа фігури між лініями графіків, та межами 0 і 0,5 з’являється у четвертому останньому полі і дорівнюватиме 0,4664 (рис.3).

Рис.3.

Список використаної літератури

    Фаронов В.В. Pascal. Начальный курс. Учебное пособие, - М.: Номидж, 1997, - 616 с.

    Руденко В.Д., Макарчук О.М., Патланжоглу М.О. Практичний курс інформатики /За ред. В.М.Мадзігона. - К: Фенікс, 1997.

    Інформатика та комп'ютерна техніка: Навч.-метод. посібник / За заг. ред. О.Д.Шарапова. – К.: КНЕУ, 2002. – 534 с.

    Я.М. Глинський. Інформатика: Навч. посібник для загальноосвітніх навчальних закладів. – Львів: «Деол», 2002. – 256 с.

TYPE=RANDOM FORMAT=ARABIC>8