Метод трапеций

В зависимости от типа подынтегральной функции выбирают и метод для численного нахождения значения определенного интеграла. Один из таких методов - метод трапеций.
program int_met_trap;
uses crt;
 const epsilon:real=0.0001; a:real=0; b:real=6;
var
 s:real;
function f(x:real):real;
 {Подынтегральная функция}
begin
 if x=0 then f:=1 else f:=sin(x)/x;
 {Функции для тестирования}
 {f:=sin(x)}
 {f:=x*x;}
 {f:=exp(-sqr(x));}
end;

function imetrap(a,b:real):real;
 {Функция, реализующая метод трапеций }
var
 n,i:longint;
 s1,s2,h,v:real;
begin
 n:=2; h:=(b-a)/n; s2:=0;
 writeln('Промежуточные значения интеграла');
 repeat
 s1:=0;
 for i:=1 to n-1 do s1:=s1+f(a+i*h);
 s1:=(s1+f(a)/2+f(b)/2)*h;
{Промежуточные значения}
 writeln(s1:9:7,', n=',n);
 n:=2*n; v:=s2; s2:=s1; s1:=v;
 h:=(b-a)/n
 until abs(s2-s1) < epsilon;
{Результат}

 imetrap:=s2;
end;
Begin
 clrscr;
 s:=imetrap(a,b);
 writeln('Интеграл =',s:9:7,' с точностью ',epsilon:6:4);
 readln
End.
Онлайн всего: 4
Гостей: 4
Пользователей: 0

STUDLAB Сообщить про опечатку на сайте