Помогите, пожалуйста, написать программу ** Паскале! очень срочно!нужно составить...

0 голосов
15 просмотров

Помогите, пожалуйста, написать программу на Паскале! очень срочно!
нужно составить программу численного интегрирования методом средних (пример метода на картинке)
поинтегральное выражение:
\frac{sin(x) +cos(2x)} {2 + \cos(x) }
a=pi/3; b=pi/2; n=60


image

Информатика (303 баллов) | 15 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
// PascalABC.NET 3.3.5, сборка 1636 от 10.03.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var (a,b,n):=(Pi/3,Pi/2,60);
  var (h,s):=((b-a)/n,0.0);
  var x:=a+h/2;
  var f:real->real:=t->(Sin(t)+Cos(2*t))/(2+Cos(t));
  repeat
    s+=f(x); x+=h;
  until x>b-h/4;
  s*=h;
  Writeln(s)
end.

Результат
0.0282159863637836 - подчеркнуты правильные цифры.

Во вложении - контрольный пример. Аналитическое решение и его приближенная с 20 знаками величина.
(150k баллов)
0 голосов
var a,b,h,x,s:real; n:integer;
begin
a:=pi/3; b:=pi/2; n:=60;
h:=(b-a)/n;
s:=0;
x:=a+h/2;
repeat
s:=s+(sin(x)+cos(2*x))/(2+cos(x));
x:=x+h;
until x>b-h/4;
s:=s*h;
writeln(x);
end.

Результат:
1.575159649924877e+00
(194k баллов)
0

Конечно s. Спасибо.
...
s:=s*h;
writeln(s);
end.

Результат:
2.821598636378351e-02