Три точки на плоскости заданны своими координатами . между какими точками расстояние наименьшее (паскаль! )

shijoatova48 shijoatova48    2   30.09.2019 22:30    0

Ответы
Sashas16 Sashas16  09.10.2020 06:27
PascalABC.NET 3.4.2, сборка 1843 от 24.10.2018Внимание! Если программа не работает, обновите версию!

type

 Pt = record

   x, y: real

 end;

 Res = record

   P1, P2: Pt;

   L2: real

 end;


function L(M1, M2: Pt): Res;

begin

 Result.P1 := M1;

 Result.P2 := M2;

 Result.L2 := Sqr(M2.x - M1.x) + Sqr(M2.y - M1.y)

end;


begin

 var M := new Pt[3];

 var R := new Res[3];

 for var i := 0 to 2 do

   Read(M[i].x, M[i].y);

 R[0] := L(M[0], M[1]);

 R[1] := L(M[0], M[2]);

 R[2] := L(M[1], M[2]);

 var minr := R.MinBy(t -> t.L2);

 var s := $'({minr.P1.x},{minr.P1.y}) и ({minr.P2.x},{minr.P2.y})';

 Println('Минимальное расстояние между точками', s)

end.

Пример-2 1.5 0.5 3 3 -2Минимальное расстояние между точками (-2,1.5) и (0.5,3)
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика