ния}
end;
S:=S*c;{умножаем полученную сумму на h/2}
until (abs(z-S)<eps*abs(S)) or (k>=14);{выходим из цикла,
если относительная погрешность предыдущего и текущего интегралов меньше заданной точности
или если число итераций превысило допустимое}
Integral:=S;{возвращаем значение полученного интергала}
end;
var i,j,n:integer;
begin
{вычисляем значение проверочного интеграла, передавая в функцию Integral имя вычисляемой функции
в данном случае f_test, интервал интегрирования a=0 b=3.14159
cm=0 dm=0(последние два параметра в данном случае могут быть любыми,т.к. f_test от них не зависит)
eps=1e-3(точность), в параметр n, по выходе из функции вычисления интеграла будет записано число итераций}
writeln('Проверочный интеграл от 0 до пи sin(x)dx =',Integral(f_test,0,3.14159,0,0,1e-3,n):7:5,
' ',n,' итераций');
c[1]:=0.9; c[2]:=1; c[3]:=1.05; c[4]:=1.1;{ввод параметров для первой функции}
d[1]:=2.4; d[2]:=2.5; d[3]:=2.6; eps:=1e-4;
a:=0; b:=3.14159;
writeln('Интеграл от ',a:1:0,' до ',b:5:3,' функции f1 ','с точностью',eps:5,' при:');
for i:=1 to 4 do{перебираем параметр с}
for j:=1 to 3 do{перебираем параметр d}
begin
{вычисляем значение первого интеграла, передавая в функцию Integral имя вычисляемой функции
в данном случае f1, интервал интегрирования a=0 b=3.14159
cm=c[i] dm=d[i](последние два параметра перебираются в цикле и не равны 0, т.к. f1 от них зависит)
eps=1e-4(точность), в параметр n, по выходе из функции вычисления интеграла будет записано число итераций}
writeln('с=',c[i]:4:2,' d=',d[j]:4:2,' равен ',Integral(f1,a,b,c[i],d[j],eps,n):8:5, ' ',n, ' итераций');
end;
readln;{ожидаем нажатия клавиши enter, иначе все выводимые данные не поместятся на один экран}
c[1]:=3; c[2]:=3.2; c[3]:=3.4; c[4]:=3.5;{ввод параметров для первой функции}
d[1]:=0.5; d[2]:=0.4; d[3]:=0.85; eps:=1e-3;
a:=1; b:=exp(1);{b=e}
writeln('Интеграл от ',a:1:0,' до ',b:5:3,' функции f2 ','с точностью',eps:5,' при:');
for i:=1 to 4 do{перебираем параметр с}
for j:=1 to 3 do{перебираем параметр d}
begin
{вычисляем значение второго интеграла, передавая в функцию Integral имя вычисляемой функции
в данном случае f2, интервал интегрирования a=1 b=e
cm=c[i] dm=d[i](последние два параметра перебираются в цикле и не равны 0, т.к. f2 от них зависит)
eps=1e-3(точность), в параметр n, по выходе из функции вычисления интеграла будет записано число итераций}
writeln('с=',c[i]:4:2,' d=',d[j]:4:2,' равен ',Integral(f2,a,b,c[i],d[j],eps,n):8:5, ' ',n, ' итераций');
end;
end.
Результаты счета.
Проверочный интеграл от 0 до пи sin(x)dx =2.00000 2 итераций
Интеграл от 0 до 3.142 функции f1 с точностью 1.0E-0004 при:
с=0.90 d=2.40 равен 17.12437 3 итераций
с=0.90 d=2.50 равен 19.52435 3 итераций
с=0.90 d=2.60 равен 22.28654 3 итераций
с=1.00 d=2.40 равен 22.33040 2 итераций
с=1.00 d=2.50 равен 25.49172 2 итераций
с=1.00 d=2.60 равен 29.12609 3 итераций
с=1.05 d=2.40 равен 24.19102 3 итераций
с=1.05 d=2.50 равен 27.60541 3 итераций
с=1.05 d=2.60 равен 31.52694 3 итераций
с=1.10 d=2.40 равен 25.37969 3 итераций
с=1.10 d=2.50 равен 28.93760 3 итераций
с=1.10 d=2.60 равен 33.01928 3 итераций
Интеграл от 1 до 2.718 функции f2 с точностью 1.0E-0003 при:
с=3.00 d=0.50 равен 8.40102 2 итераций
с=3.00 d=0.40 равен 5.52503 2 итераций
с=3.00 d=0.85 равен 17.78460 2 итераций
с=3.20 d=0.50 равен 9.35094 2 итераций
с=3.20 d=0.40 равен 6.29171 2 итераций
с=3.20 d=0.85 равен 19.17026 2 итераций
с=3.40 d=0.50 равен 10.29153 2 итераций
с=3.40 d=0.40 равен 7.06018 2 итераций
с=3.40 d=0.85 равен 20.52016 2 итераций
с=3.50 d=0.50 равен 10.75780 2 итераций
с=3.50 d=0.40 равен 7.44414 2 итераций
с=3.50 d=0.85 равен 21.18214 2 итераций
Заключение.
В данной курсовой работе вычислялись определенные интегралы методом Гаусса. Как видно из полученных результатов, программа работает верно, т.к. теоретически =2, что совпадает с расчетным, обеспечивает заданную точность вычислений, при малом числе итераций. К достоинствам данного метода вычисления функций стоит отнести, то что метод Гаусса обеспечивает точное вычисление интеграла от полинома степени 2m-1. К недостаткам следует отнести относительно большое время расчета интеграла, при больших m.
Библиографический