zadach31.PAS

Https://dostavka-byketov.ru

https://dostavka-byketov.ru срочная доставка цветов в Дюртюли.

dyurtyuli.dostavka-byketov.ru

{* Задача 31 *}

Unit ZADACH31;
Interface
Implementation
Begin
 writeln('На плоскости заданы своими координатами n точек. Составить программу определяющую между какими из пар точек самое большое расстояние ');
End.

Program zadach31;

Uses zadach31.pas; {* Эту строку можно удалить *}
Uses crt; {* Подключаем внешние файлы *}
Const {* Предопределенные *}
  nmax = 15;
Var {* В работе нам потребуются переменные: *}
  x   : Array[1..nmax] Of real;
  y   : Array[1..nmax] Of real;
  n   : byte;
  i   : byte;
  j   : byte;
  imx : byte;
  jmx : byte;
  mx  : real;
Begin
  clrscr; {* Очищаем экран *}
  randomize;
  Repeat  write('Количество точек от 2 до ', nmax, ' n=');
    readln(n);
  Until n In [2..nmax];
  For i := 1 To n Do {* Увеличиваем i от 1 до n с шагом 1 *}
  Begin
    x[i] := 10 * random - 4;
    y[i] := 10 * random - 4;
  End;
  writeln('Координаты:');
  write('N');
  For i := 1 To n dowrite(i : 5); {* Переменная i увеличивается с 1 до n *}
    writeln; {* Пустая строка *}
  write('X');
  For i := 1 To n Do {* Переменная i увеличивается с 1 до n *}
    write(x[i] : 5 : 1);
  writeln; {* Пустая строка *}
  write('Y');
  For i := 1 To n Do {* Цикл для i => [1 .. n] *}
    write(y[i] : 5 : 1);
  writeln; {* Вывод пустой строки *}
  writeln; {* Вывод пустой строки *}
  mx := sqrt(sqr(x[1] - x[2]) + sqr(y[1] - y[2]));
  imx := 1;
  jmx := 2;
  For i := 1 To n - 1 Dofor j := i + 1 To n Do {* Цикл для i => [1 .. n] *}
    If sqrt(sqr(x[i] - x[j]) + sqr(y[i] - y[j])) > mx Then
    Begin
      mx := sqrt(sqr(x[i] - x[j]) + sqr(y[i] - y[j]));
      imx := i;
      jmx := j;
    End;
  writeln('Максимальное расстояние между точками ', imx, '-', jmx, ' = ', mx : 0 : 2);
  readln
End.