Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
| некто |
5.8.2010, 21:04
Сообщение
#1
|
|
Пользователь Группа: Пользователи Сообщений: 3 Регистрация: 5.8.2010 Пользователь №: 23 131 |
если сделать простую на паскале прогу вычисляющую интегралы методом трапеций и менять ширину промежутка (dx) то можно увидеть что погрешность изменяется по какомуто неведомому закону. можно конечно сослатся на то что это дескать результат того что отрезок интегрирования делится на dx c разными остатками. но пардон погрешность меняется слишком сильно. функция f интегрируемая
ist - точное значение alfa относит.погрешность вычисления. а если вместо трапеций использовать метод Симпсона то погрешность будет скакать от порядка Е-10 до Е2 примерно. program integral; uses crt; var a,summa,summa1,b,dx,S,x,m,c,delta,p,u: real; n,i,k:longint; function f(x:real):real; begin f:=cos(x); end; function ist(a:real;b:real):real; begin ist:= sin(B)-sin(a); end; function alfa (is:real;q:real):real; begin alfa:=abs((abs(q-is))/is)*100; end; procedure trapetsium (a:real;b:real;dx:real); var i,n:longint; begin summa:=0; n:=round(abs(b-a)/dx); for i:=1 to n-1 do begin summa:=summa+f(a+i*dx); end;{ if (a+n*dx)<>b then writeln( (a+n*dx),b );} S:=0.5*dx*(f(a)+f(B)+2*summa); writeln('trarezium ',S); end; begin clrscr; write('a=');readln(a); write('b=');readln(B); writeln('dx=',dx); c:=1000; k:=0; while dx>0.0001 do begin trapetsium (a,b,dx); writeln(alfa(ist(a,B),S),'----dx=',dx); if alfa(ist(a,B),S)<c then begin c:=alfa(ist(a,B),S); m:=dx; end; dx:=dx-0.0001; inc(k) end; writeln; writeln('grex=',c);writeln('dx=',m);write(k); write(ist(a,B)); readln; end. Сообщение отредактировал некто - 5.8.2010, 21:05 |
| некто |
6.8.2010, 20:43
Сообщение
#2
|
|
Пользователь Группа: Пользователи Сообщений: 3 Регистрация: 5.8.2010 Пользователь №: 23 131 |
эй...! тут Мозги есть на форуме? или здесь только в чат срать умеют? странный форум однако... все просят помощи не получают потом уходят. я же не помощи прошу а предлагаю разобратся с проблемой вместе...
|
| Godzila |
7.8.2010, 16:29
Сообщение
#3
|
![]() Good Morning, Vietnam Группа: Главные администраторы Сообщений: 3 197 Регистрация: 20.12.2004 Из: городской морг Пользователь №: 1 631 |
Все мозги разбрелись, форум уже давно не тот что был
-------------------- Алкаши, ядрена вошь! Пива хочешь? © Данелия
|
![]() ![]() |
|
Текстовая версия | Сейчас: 20.5.2012, 23:41 |