const
nmax = 15;
var
m: array [1 .. 2, 1 .. nmax] of real;
n, i, j, imn, jmn: byte;
mn: real;
begin
clrscr;
randomize;
repeat
write('Количество точек от 2 до ', nmax, ' n=');
readln(n);
until n in [2 .. nmax];
for i := 1 to n do
begin
m[1, i] := 10 * random - 4;
m[2, i] := 10 * random - 4;
end;
writeln('Координаты:');
write('N');
for i := 1 to n do
write(i:5);
writeln;
write('X');
for i := 1 to n do
write(m[1, i]:5:1);
writeln;
write('Y');
for i := 1 to n do
write(m[2, i]:5:1);
writeln;
writeln;
mn := sqrt(sqr(m[1, 1] - m[1, 2]) + sqr(m[2, 1] - m[2, 2]));
imn := 1;
jmn := 2;
for i := 1 to n - 1 do
for j := i + 1 to n do
if sqrt(sqr(m[1, i] - m[1, j]) + sqr(m[2, i] - m[2, j])) < mn then
begin
mn := sqrt(sqr(m[1, i] - m[1, j]) + sqr(m[2, i] - m[2, j]));
imn := i;
jmn := j;
end;
writeln('Минимальное расстояние между точками ', imn, '-', jmn,
' = ', mn:0:2);
readln
end.