Введiть значення х та y:
Лабораторна робота
Розв’язок диференціального рівняння
Методом”Рунге-Кутта ”
Завдання:
Мінімізувати унімїдальну функцію методом “Золотого січення”. Де а=5, а b=-0,05.
Програма на мові Pascal :
program ZC;
uses crt;
var a,b,e,y,z,a0,b0,va,vb,kp:real;
label m1,kin;
begin
clrscr;
{vvedennya koefisientiv}
writeln ('_ vvedit koefisientu _');
write ('vvedit a0:=');read(a0);
write ('vvedit b0:=');read(b0);
writeln ('_ vvedit vidrizok _');
write ('vvedit a:=');read(a);
write ('vvedit b:=');read(b);
write ('vvedit pohubky e:=');read(e);
{rozrahunku}
y:=0.618*a+0.382*b;
z:=0.382*a+0.618*b;
va:=y*y+a0*exp(b0*y);
vb:=z*z+a0*exp(b0*z);
m1:
if va<vb then begin b:=z;kp:=1;end
else begin a:=y;kp:=0;end;
if (b-a)<e then goto kin
else
if kp=1 then
begin
z:=y;vb:=va;
y:=0.618*a+0.382*b;
va:=y*y+a0*exp(b0*y);
goto m1;
end
else
begin
y:=z;va:=vb;
z:=0.382*a+0.618*b;
vb:=z*z+a0*exp(b0*z);
goto m1;
end;
kin:
kp:=(a+b)/2;
y:=kp*kp+a0*exp(b0*kp);
writeln('znachennya x dorivnye ',kp:5:3);
writeln('znachennya y dorivnye ',y:5:3);
readln;
end.
Результати :
Представлення в середовищі Mathcad :