Добавил:
Источник:
Uman
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:01 семестр / К экзамену-зачёту / Все задачи с экзамена в формате PAS / Alex / SIMPSON
.PASprogram Integral_by_Simpsons;
uses crt;
const
eps=0.0001;
a=0.75;
b=3;
var
stp,s2tp,i,j,n:integer;
r,intgrl,intgrl2,h:real;
x:array[0..1000] of real;
function fn(z:real):real;
begin;
fn:=exp(1/z)/(z*z);
end;
begin
clrscr;
stp:=40;
repeat
for j:=1 to 2 do begin
n:=stp*j;
h:=(b-a)/(2*n);
for i:=0 to 2*n do x[i]:=a+i*h;
intgrl:=fn(x[0])+fn(x[2*n]);
for i:= 1 to (2*n-1) do if odd(i)=true then intgrl:=intgrl+4*fn(x[i]) else intgrl:=intgrl+2*fn(x[i]);
intgrl:=intgrl*(h/3);
if j=1 then intgrl2:=intgrl;
end;
r:=abs(intgrl-intgrl2)/15;
writeln('ЋвўҐв Ї® д®а¬г«Ґ n 1');
writeln(intgrl2:8:7);
intgrl:=intgrl+(intgrl-intgrl2)/15;
s2tp:=stp*2;
until r<eps;
writeln;
writeln('ЋвўҐв Ї® д®а¬г«Ґ N 2');
writeln('„«п epsilon=',eps:10:5,', I=',intgrl:8:7);
writeln('Ђ «ЁвЁзҐбЄЁ© ®вўҐв:',(exp(1/0.75)-exp(1/3)):10:7);
readln;
end.
Соседние файлы в папке Alex
