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

Умоляю даны координаты точек а(х1,у1), в(х2,у2), с(х3,у3). найти, ка- кие две точки расположены ближе друг к другу. координаты ввести с клавиатуры. (паскаль через if)

Показать ответ
Ответ:
Samvel7777
Samvel7777
09.10.2020 12:46
Функционал

Ввести с клавиатуры координаты x, y точек A, B, C. Вывести две точки, расстояние между которыми минимально, а также само расстояние между ними.


Алгоритм решенияФормула расстояния между двумя точками на плоскости:

dst(A, B)=\sqrt{(x_A-x_B)^2+(y_A-y_B)^2}

Воспользуемся этой формулой. Предположим, что между точками A и B наименьшее расстояние. Проверим - если между точками B и C расстояние меньше, то обновим ответ. То же самое сделаем с точками A и C.


Код

В ansdst храним минимальное расстояние, в ans - названия двух ближайших друг к другу точек

var x1, y1, x2, y2, x3, y3, ansdst: real;

 ans: string;

begin

 read(x1, y1, x2, y2, x3, y3);

 ans:='A B';

 ansdst:=sqr(x2-x1)+sqr(y2-y1);

 if sqr(x2-x3)+sqr(y2-y3)>ansdst then

 begin

   ans:='B C';

   ansdst:=sqr(x2-x3)+sqr(y2-y3);

 end;

 if sqr(x1-x3)+sqr(y1-y3)>ansdst then

 begin

   ans:='A C';

   ansdst:=sqr(x1-x3)+sqr(y1-y3);

 end;

 writeln(ans);

 writeln(sqrt(ansdst));

End.

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