Найти площадь фигуры - Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите, пожалуйста, написать прогу (можно на любом языке) по нахождению площади фигуры на тему численные методы.

Решение задачи: «Найти площадь фигуры»

textual
Листинг программы
const n=20;{количество разбиений}
      a=0;
      b=pi/2;
      e=0.001;{точность}
type func=function(x:real):real;
{$F+} {функции по условию}
function F(x:real):real;
begin
F:=cos(x)-exp(x)+1;
end;
function F1(x:real):real;
begin
F1:=cos(x);
end;
function F2(x:real):real;
begin
F2:=exp(x)-1;
end;
{$F-}
{вычисление интеграла методом прямоугольников}
function Integral(f:func;xn,xk:real):real;
var h,x,s:real;
    i:integer;
begin
h:=(xk-xn)/n;
x:=xn+h/2;
s:=0;
for i:=1 to n do
 begin
  s:=s+f(x);
  x:=x+h
 end;
Integral:=s*h;
end;
var c,x1,x2,x,p:real;
begin
{найдем точку пересечения графиков методом бисекции}
x1:=a;
x2:=b;
c:=(x1+x2)/2;
repeat
c:=(x1+x2)/2;
if F(x1)*F(c)<=0 then x2:=c else x1:=c;
until abs(x2-x1)<e;
x:=(x1+x2)/2;
writeln('Ордината пересечения графиков=',x:0:3);
{определим площадь фигуры}
p:=Integral(F2,a,x)+Integral(F1,x,b);
write('Площадь фигуры=',p:0:3);
end.

Объяснение кода листинга программы

  1. Объявляются переменные n, a, b, e, func, F, F1, F2, Integral, h, x, s, i, c, x1, x2, x, p.
  2. Задается значение переменной n равное 20.
  3. Объявляется функция F, которая принимает аргумент x типа real и возвращает значение типа real.
  4. Объявляется функция F1, которая принимает аргумент x типа real и возвращает значение типа real.
  5. Объявляется функция F2, которая принимает аргумент x типа real и возвращает значение типа real.
  6. Задается значение переменной xn равное 0.
  7. Задается значение переменной xk равное pi/2.
  8. Задается значение переменной e равное 0.001.
  9. Определяется функция Integral, которая принимает функции f и аргументы xn и xk типа real и возвращает значение типа real.
  10. В функции Integral объявляются переменные h, x, s и i.
  11. Вычисляется значение переменной h, равное (xk-xn)/n.
  12. Вычисляется значение переменной x, равное xn+h/2.
  13. Инициализируется переменная s значением 0.
  14. Задается начальное значение переменной i равное 1.
  15. Задается условие для цикла while: повторять цикл до тех пор, пока abs(x2-x1)<e.
  16. Вычисляется значение переменной c, равное (x1+x2)/2.
  17. Проверяется условие: если F(x1)*F(c)<=0 то значение переменной x2 устанавливается равным c, иначе значение переменной x1 устанавливается равным c.
  18. Вычисляется среднее значение x1 и x2, равное (x1+x2)/2.
  19. Выводится значение переменной x: (x1+x2)/2.
  20. Вычисляется площадь фигуры путем интегрирования функций F2 и F1 от xn до x.
  21. Выводится значение площади фигуры.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.133 из 5