This repository has been archived on 2024-12-25. You can view files and clone it, but cannot push or open issues or pull requests.
2024-03-10 20:32:51 +03:00

24 lines
717 B
ObjectPascal

uses NumLibABC;
// Ñëó÷àéíûé ïîèñê BestP
begin
var f:function(x:array of real):real:= x->Power(x[0],4)+
Power(x[1],4)-2*Sqr(x[0])+4*x[0]*x[1]-2*Sqr(x[1])+3;
var a:=Arr(-20.0,-20.0); // íèæíèå ãðàíèöû
var b:=Arr(20.0,20.0); // âåðõíèå ãðàíèöû
var x:=new real[a.Length]; // äëÿ êîíñòðóêòîðà MinHJ
var oL:=new FMinN(x,f);
var r:=oL.BestP(a,b,0.01);
var y:real;
var fet:=f(Arr(Sqrt(2),-Sqrt(2)));
foreach var t in r do begin
(y,x):=(t[0],t[1]);
Write('Âåêòîð àðãóìåíòîâ: '); x.Println;
Write('Àáñ.ïîãðåøíîñòè: ');
x.Foreach(z->WriteFormat('{0:0.0e0} ',Abs(z)-Sqrt(2)));
Writeln;
Writeln('Çíà÷åíèå ôóíêöèè: ', y, ', àáñ.ïîãðåøíîñòü: ',Abs(y-fet));
Writeln
end
end.