Даны координаты точек на плоскости точек ≤30. Найти пары номера точек, расстояние между которыми наибольшее — Pascal(Паскаль)

var
a:array[1..30,1..2] of integer;
i,j,d,k,t,n:integer;
max:real;
begin
n:=30;
for i:=1 to n do
 begin
  a[i,1]:=random(100);
  a[i,2]:=random(100);
  write(a[i,1],';',a[i,2],' ');
 end; 
writeln();
max:=0;
k:=1;
t:=2;
for i:=1 to n-1 do
 begin
  d:=0;
  for j:=i to n do
     if sqrt(sqr(a[i,1]-a[j,1])+sqr(a[i,2]-a[j,2]))>max then
          begin
            k:=i;
            t:=j;
             max:=sqrt(sqr(a[i,1]-a[j,1])+sqr(a[i,2]-a[j,2]));
          end;
  end;
write('Максимальное расстояние у точек с координатами');
writeln('x1= ',a[k,1],' y1= ',a[k,2],' x2= ', a[t,1],' y2= ',a[t,2]);
end.

Результаты работы программы

Leave a Comment

− 3 = 2