![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 22.09.2023
Сообщений: 26
|
![]()
Даны вещественные числа x1, y1, x2, y2, x3, y3, x4, y4.
Определите, имеет ли отрезок с концами (x1, y1) и (x2, y2) общие точки с отрезком с концами (x3, y3) и (x4, y4). Ввод В первой строке содержатся вещественные числа x1, y1, x2, y2, x3, y3, x4, y4 – координаты концов отрезков. Вывод Вывести "Yes", если отрезки имеют общие точки, и "No" в противном случае. Подскажите пожалуйста, где я ошибся. Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,367
|
![]()
Тут есть готовая формула для координат точки пересечения.
https://ru.wikipedia.org/wiki/Пересечение_прямых Подумал, что этого будет достаточно, но осознал, что надо проверить не только ситуацию с пересечением, но и совпадение отрезков и их параллельность. Но по ссылке эти замечания есть. Добавил: Решил разобраться подробнее и натолкнулся на вопросы. На этом сайте есть некоторое решение: https://www.interestprograms.ru/sour...-dvuh-otrezkov Подумалось, что через параметрическое уравнение прямой будет лучше , но ... Но решения с вертикальным отрезком тут нет (там деление на ноль). Необходимо проверять более корректно координаты отрезков. На Python написал скрипт Код:
PS: Варианты, которые следует рассматривать: 1. Отрезки пересекаются 2. Отрезки параллельные и накладываются полностью или частично 3. Отрезки не пересекаются 4. Отрезки параллельные 5. Отрезки параллельные и не накладываются (типа штрихов) Как вариант, посмотреть в сторону векторного умножения, но хз...
Как-то так, ...
Последний раз редактировалось ViktorR; 12.10.2023 в 18:26. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Точка пересечения двух отрезков | lostwarrior99 | Общие вопросы C/C++ | 3 | 27.12.2016 17:57 |
Нахождение точки пересечения двух отрезков [Паскаль] | bnoazx005 | Помощь студентам | 0 | 18.12.2012 21:39 |
Определить имеют ли общие точки две плоские фигуры | JL25A | Помощь студентам | 10 | 25.09.2011 02:26 |
определить общие символы двух строк | helena91 | Общие вопросы Delphi | 5 | 23.02.2011 02:00 |
Нужно найти координаты точки пересечения двух отрезков в пространстве... | Dima6120 | Мультимедиа в Delphi | 2 | 30.07.2010 13:36 |