Нахождение интегралов в среде Pascal

Тип работы:
Лабораторная работа
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Нахождение интегралов в среде Pascal

Текст задания: найти интеграл функции sin (x+10)+x4=0 используя два метода: метод прямоугольников и метод трапеций; пользователь вводит значения и выбирает метод решения.

Текст программы:

program LW5;

uses

Crt;

var

dx, x1, x2, e, i, c, s: real;

function Fx (x: real):real;

begin

Fx: =sin (x+10)+x*x*x*x; {function}

end;

procedure CountViaBar;

var

xx1, xx2: real;

c: longint;

begin

writeln ('-');

writeln ('-> MEthod PRYAMOUGOL''NIKOVVVV');

writeln ('vsego interaciy: ', round (abs (x2-x1)/e));

i: =0;

for c: =1 to round (abs (x2-x1)/e) do begin

write ('integration ', c, chr (13));

xx1: =Fx (x1+c*e);

xx2: =Fx (x1+c*e+e);

i: =i+abs (xx1+xx2)/2*e;

end;

writeln ('-');

writeln ('INTEGRAL=', i);

end;

procedure CountViaTrap;

var

xx1, xx2, xx3: real;

c: longint;

begin

writeln ('-');

writeln ('-> MEthod TRAPECIY');

writeln ('vsego interaciy: ', round (abs (x2-x1)/e));

i: =0;

for c: =1 to round (abs (x2-x1)/e) do begin

write ('Integration ', c, chr (13));

xx1: =Fx (x1+c*e);

xx2: =Fx (x1+c*e+e);

if xx2> xx1 then xx3: =xx1 else xx3: =xx2;

i: =i+abs (xx2-xx1)*e+abs (xx3)*e;

end;

writeln ('-');

writeln ('INTEGRAL=', i);

end;

begin

clrscr;

writeln ('vvedite ishodniye zna4eniya: ');

write ('NA4AL''NOYE ZNE4ENIYE x (x1)='); Readln (x1);

write ('KONE4NOYE ZNA4ENIYE x (x2)='); Readln (x2);

write ('TO4NOST'' VbI4ISLENIY (e)='); Readln (e);

writeln ('-======vvedite metod====== -: ');

writeln ('DLYA METODA PRYAMOUGOL''NIKOV VVEDITE 1, DLYA METODA TRAPECIY VVEDITE 2');

//writeln ('DLYA METODA TRAPECIY VVEDITE 2');

readln (s);

if s=1 then begin

CountViaBar;

end;

if s=2 then begin

CountViaTrap;

end;

readln;

end.

ПоказатьСвернуть
Заполнить форму текущей работой