Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Трапеция әдісі.




функциясын нүктелері арқылы тұрғызылған

бір дәрежелі Лагранж көпмүшесімен алмастырсақ, онда

(1.8)

мұндағы

(1.8) формуласын аралығында интегралдау арқылы

(1.9)

теңдігін аламыз. Осыдан

. Бұл формула трапеция әдісі деп аталады,себебі

3-сурет

сызықтарымен қоршалған қисық сызықты трапецияның ауданы трапециясының ауданымен алмастырылады (3сурет).

(1.9) формуладан бұл әдістің жіберетін қатесі

(2)

екенін көреміз. Ал жоғарыдан бағаласақ

,

Енді интегралды былай есептесек:

(2.1)

 

Онда

(2.2)

трапеция әдісінің жалпы формуласы шығады.

Ал жіберілетін қате

(2.3)

Жоғарыдан бағаласақ

, (2.4)

.

Сонымен, трапеция әдісінің кесіндісіндегі дәлдігі екенін көреміз.

 

#include <iostream.h>

#include <math.h>

double f(double x)

{ double s=x;

return s;

}

void main()

{double a,b,s,s1,J1,J2,x[100];

float h,h1,c,e;

int n;

cin >>a >>b >>n;

s=0;

s1=0;

h=(b-a)/n;

h1=(b-a)/(2*n);

c=(f(b)-f(a))/2;

for( double i=a+h; i<b; i+=h)

{

s+=f(i);}

J1=(c+s)*h;

cout<<"J1="<<J1<<endl;

for(double j=a+h/2; j<b; j+=h/2)

{

s1+=f(j);}

J2=(c+s1)*h/2;

cout<<"J2="<<J2<<endl;

e=fabs(J2-J1);

cout<<"e=fabs(J2-J1)="<<e<<endl;}

 

 

1) a=1;b=5;n=10

 

2) a=1;b=5;n=100

3) a=1;b=5;n=1000







Дата добавления: 2015-09-06; просмотров: 1818. Нарушение авторских прав


Рекомендуемые страницы:


Studopedia.info - Студопедия - 2014-2019 год . (0.002 сек.) русская версия | украинская версия