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

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Сделайте плииз на Паскале АБС (http://www.tehnari.ru/f41/t87874/)

farejoker 28.04.2013 13:42

Сделайте плииз на Паскале АБС
 
При различных значениях параметра z, входящего в выражение для функции f(x) sin^2(x-z)/cos^2(x-z), вычислить значение интеграла на заданном отрезке [a,b] 0.20-0.40 с точностью ε. Полученное значение интеграла сравнить с результатом, вычисленным по формуле Ньютона - Лейбница. Получить значение интеграла при различных ε=10^-2; 10^-3; 10^-4; 10^-5. В расчете вывести число разбиений N . Метод левых прямоугольников: 1,5,9,13,17; метод правых прямоугольников : 2,6,10,14,18; метод средних прямоугольников: 3,7,11,15,19; метод трапеций: 4,8,12,16,20.

farejoker 28.04.2013 13:45

f(x)=sin^2(x-z)/cos^2(x-z) a,b=0.20-0.40 F(x)=tg(x-z)-x-z

farejoker 28.04.2013 14:11

Сделайте плииз на Паскале АБС
 
При различных значениях параметра z, входящего в выражение для функции f(x), вычислить значение интеграла на заданном отрезке [a,b] с точностью ε. Полученное значение интеграла сравнить с результатом, вычисленным по формуле Ньютона - Лейбница. Получить значение интеграла при различных ε=10^-2; 10^-3; 10^-4; 10^-5. В расчете вывести число разбиений N . метод трапеций.
f(x)=sin^2(x-z)/cos^2(x-z); a,b=0.20-0.40 ;F(x)=tg(x-z)-x-z;

Vladimir_S 28.04.2013 16:20

Ну и сколько еще дубликатов мы будем иметь счастие лицезреть? Темы объединены. Дальше - удаление дублей и бан.
А насчет задачки - не хотите самостоятельно попробовать? Знаете, такой кайф, если получится... А мы поможем, если что.

farejoker 28.04.2013 16:27

Цитата:

Сообщение от Vladimir_S (Сообщение 901913)
Ну и сколько еще дубликатов мы будем иметь счастие лицезреть? Темы объединены. Дальше - удаление дублей и бан.
А насчет задачки - не хотите самостоятельно попробовать? Знаете, такой кайф, если получится... А мы поможем, если что.

знал бы как сделал б( но увы

Vladimir_S 28.04.2013 16:40

Хм... что-то у меня первообразная получается tg(x-z)-x+z . Ладно, проверю еще разок.

Vladimir_S 28.04.2013 17:15

Цитата:

Сообщение от farejoker (Сообщение 901918)
знал бы как сделал б( но увы

Ладно, пожалуйста. Мне, в общем-то не трудно, только вот... А как Вы дальше своё существование мыслите? Так всю учебу и проездить на форумах? Знаете... не выйдет. Уж поверьте. В общем, очень рекомендую, если еще не поздно, взяться за ум. Впрочем, Вам жить...
Код:

Const
 a=0.2;
 b=0.4;

Function F(x1,z1:Real):Real;
begin
 F:=Sqr(Sin(x1-z1))/Sqr(Cos(x1-z1));
end;

Function Antiderivative(x1,z1:Real):Real;
begin
 Antiderivative:=Sin(x1-z1)/Cos(x1-z1)-x1+z1;
end;

Procedure Trapezium(zt,et:real; var T:real; var Nt:Integer);
var
 i,N:Integer;
 Sum1,Sum2,h:Real;
begin
 N:=5;
 h:=(b-a)/N;
 Sum1:=(F(a,zt)+F(b,zt))/2*h;
 for i:=1 to N-1 do
  Sum1:=Sum1+h*F(a+h*i,zt);
 Sum2:=Sum1;
 Repeat
  Sum1:=Sum2;
  N:=N*2;
  h:=(b-a)/N;
  Sum2:=(F(a,zt)+F(b,zt))/2*h;
  for i:=1 to N-1 do
  Sum2:=Sum2+h*F(a+h*i,zt);
 Until ABS(Sum2-Sum1)<et;
 Nt:=N;
 T:=Sum2;
end;

Var
 j,M:Integer;
 z,R,Eps:real;
Begin
 Write('z= ');
 Readln(z);
 Eps:=0.1;
 For j:=1 to 4 do
  begin
  Eps:=Eps/10;
  Trapezium(z,Eps,R,M);
  Writeln('Eps= ',Eps:8);
  Writeln('Number of steps= ',M);
  Writeln('Result: ',R:0:9);
  Writeln;
  end;
 WriteLn('Accurate value:', (Antiderivative(b,z)-Antiderivative(a,z)):0:9);
 ReadLn;
End.



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

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