![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 07.10.2009
Сообщений: 23
|
![]()
Здравствуйте.
Мне не нужно решение задачи, скорее нужна помощь по алгоритму решения. Необходимо найти периметр четырехугольника с заданными координатами вершин. все кажется довольно таки просто, кроме того, что стороны четырехугольника неизвестны. Для первого случая (рис.1) все работает, а вот на рис 2 простой алгоритм перестает работать. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
![]()
1) Берём 2 точки (назовём эти точки А и Б) которые максимально удалены (длину отрезка через координаты надеюсь знаете как найти) - это даст нам уверенность что мы выбрали диагональ. Оставшиеся точки назовём В и Г
2) Вычисляем площади треугольников АБВ и АБГ (через координаты по формуле Герона) 3) Складываем и получаем ответ |
![]() |
![]() |
![]() |
#3 | |
АльTRUEи$т
Форумчанин
Регистрация: 19.03.2009
Сообщений: 784
|
![]()
2eoln а периметр то тут причем?
Цитата:
|
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
![]() |
![]() |
![]() |
![]() |
#5 | |
Любопытная Вредина
Участник клуба
Регистрация: 19.06.2009
Сообщений: 1,285
|
![]() Цитата:
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
|
|
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
Одиночество, Вы, как обычно, абсолютно правы.
Но уже выяснили, вычисление площади в данном случае не нужно... Цитата:
пусть координаты точки A (x1, y1) и точки B (x2, y2 ) тогда расстояние AB = Код:
|
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 20.11.2009
Сообщений: 61
|
![]()
Это из теории графов. Погугли - есть алгоритмы определения замкнутого пути с отсутствием пересечений.
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 07.10.2009
Сообщений: 23
|
![]()
Во-первых у меня на рисунке нет вершин А, В, Г, Б, а есть вершины A, B, C, D.
Во-вторых, как правильно меня понял червячок, основная проблема - нахождение именно правильных сторон. Ведь в двух предоставленных вариантах стороны у четырехугольника - разные. В первом: AB, BC, CD, DA, во-втором: AD, DB, BC, CA. Отсюда, собственно, и затруднение в нахождении алгоритма. К сожалению, ничего путного по теории графов пока найти не могу. |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 20.11.2009
Сообщений: 61
|
![]()
Предлагаю алгоритм поиска в длину (упрощенный, ибо количество вершин статично) с использованием проверки, есть ли пересечение при найденном обходе (ввиду того, что известны координаты и кол-во вершин 4, опять таки проверить не составит труда).
|
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 20.11.2009
Сообщений: 61
|
![]()
Тут еще такая идея возникла. Точки расположены на координатной прямой. Берешь плоскость (можно не брать, можно только представлять в уме
![]() |
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите написать программу нахождения площади и периметра на Delphi | _Andruha_ | Помощь студентам | 2 | 24.12.2009 05:29 |
Определение IP | IvanLex | HTML и CSS | 6 | 28.03.2008 07:46 |
Определение IP | IvanLex | Общие вопросы по Java, Java SE, Kotlin | 1 | 19.02.2008 09:12 |
Определение IP | RKS | Работа с сетью в Delphi | 3 | 13.12.2007 15:43 |
из Паскаля определить запущен ли Windows | Трофимов Александр | Паскаль, Turbo Pascal, PascalABC.NET | 9 | 14.06.2007 15:25 |