Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Паскаль. Вычисление интегралов (http://www.tehnari.ru/f41/t250435/)

fluqxs 01.12.2016 03:44

Паскаль. Вычисление интегралов
 
Составить программу, подсчитывающую с точностью Е=10^-3 значение интеграла : 1)интеграл от Пи/6 do Pi/3(tg^2(x) + ctg^2(x))*d*x) по методу Правых прямоугольников. Для точности использовать метод двойного пересчета. Результат срав-нить со значением интеграла, подсчитанным с помощью первообразной F(x) по формуле Ньютона-Лейбница: F(b)-F(a).
Метод приближенного вычисления определенного интеграла должен быть запро-граммирован с помощью процедуры. Отрезок интегрирования, точность вычисления вводятся с клавиатуры, подынтегральная функция описывается с помощью функции пользователя.
Распечатать: отрезок интегрирования, точность вычисления, приближенное значение определенного интеграла, значение интеграла, подсчитанное по формуле Ньютона-Лейбница.

Vladimir_S 01.12.2016 10:49

И Вам тоже здравствовать! Очень рады Вас видеть.
Я не слишком Вас побеспокою, если предложу ознакомиться с решением Вашей задачи? Нет? Ну, не взыщите, если что, просто не откликнуться на столь изысканно-вежливую просьбу о помощи было выше моих сил.
Код:

Var
 AV,a,b,Res,eps:Real;

Function F(t:Real):Real;
begin
 F:=Sqr(Sin(t)/Cos(t))+Sqr(Cos(t)/Sin(t));
end;

Function Antiderivative(t:Real):Real;
begin
 Antiderivative:=-2*(Cos(t*2)/Sin(t*2)+t);
end;

Function Rectangle(Hr:Real):Real;
var
 Sum,x:Real;
begin
 Sum:=0;
 x:=a;
 repeat
  Sum:=Sum+Hr*F(x);
  x:=x+Hr;
 until x>b;
 Rectangle:=Sum;
end;

Procedure Calc_Int(var R:real);
var
 dif,Hc:Real;
begin
 Hc:=b-a;
 repeat
  dif:=Abs(Rectangle(Hc)-Rectangle(Hc/2));
  Hc:=Hc/2;
 until dif<eps;
 R:=Rectangle(Hc);
end;

Begin
 Write('a = ');
 Readln(a);
 Write('b = ');
 Readln(b);
 Write('eps = ');
 Readln(eps);
 Calc_Int(Res);
 Writeln('Result: ',Res:0:8);
 AV:=Antiderivative(b)-Antiderivative(a);
 WriteLn('Accurate value: ', AV:0:8);
 Readln
End.



Часовой пояс GMT +4, время: 16:51.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.