В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
Sravkur
Sravkur
28.10.2022 10:11 •  Информатика

Информатика даны координаты n на плоскости (x1,y1), (xn,yn) (n< =30). найдите номера двух точек, расстояние между которыми максимально (такая пара точек- есдинственная)

Ответ:
alisabeletzkay
alisabeletzkay
04.10.2020 11:43
Программа на паскале:
const n=5;
var xy:array[1..n,1..2] of integer;
i, j, imax, jmax:integer;
r, max:real;
begin
Randomize;
for i:=1 to n do
 begin
 for j:=1 to 2 do
   begin
   xy[i,j]:=random(21)-10;
   write(xy[i,j]:4);
   end;
 writeln;
 end;
max:=0;
for i:=1 to n-1 do 
 for j:=i+1 to n do
   begin
   r:=sqr(xy[i,1]-xy[j,1])+sqr(xy[i,2]-xy[j,2]);
   if r>max then begin max:=r; imax:=i; jmax:=j; end;
   end;  
writeln('max = ',sqrt(r):5:2,', точки: ',imax,' - ',jmax);
end.

Пример:
-8  3
-8 -3
 7  2
 2 10
-6 0
max = 12.81, точки: 2 - 4

PS. Если нужно на C++ - обращайтесь.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?