Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2010, 06:52   #11
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

cherw9!40k Почти правильно! Только проверять надо так:
Проводим прямую через 2 точки и если 2 другие находятся в одной полуплоскости значит это сторона и так для всех отрезков!
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 10.01.2010, 21:02   #12
strateg66
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 23
По умолчанию

В общем нашел решение сам.
Алгоритм следущий:
1. берем за основу что первые три точки А,В,С составляют треугольник.
2. Ищем расстояние от точки Д до каждой из сторон треугольника.
3. Сторона до которой расстояние наименьшее по определению в четырехугольнике не существует, и ее заменяют две стороны идущие от D.
Если кому интересно могу выложить листинг задачи. Все отлично работает. проверял со всеми вариантами.
strateg66 вне форума Ответить с цитированием
Старый 11.01.2010, 08:36   #13
IT-man
АльTRUEи$т
Форумчанин
 
Аватар для IT-man
 
Регистрация: 19.03.2009
Сообщений: 784
По умолчанию

А если точка d в ровно центре треугольника и расстояние до всех сторон одинаковое? Всех 3 сторон тогда не существует? Или как то надо выбирать?
Цитата:
«Никто не войдет в Рай, имея хотя бы крупицу гордыни в своем сердце». «Аллах Красив и любит красоту. Гордыня означает отказ от истины и высокомерие»
IT-man вне форума Ответить с цитированием
Старый 11.01.2010, 21:12   #14
strateg66
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 23
По умолчанию

ну в таком случае и четырехугольник то не получится)
strateg66 вне форума Ответить с цитированием
Старый 11.01.2010, 21:13   #15
strateg66
Пользователь
 
Регистрация: 07.10.2009
Сообщений: 23
По умолчанию

Поправка: решение работает только для фигур у которых высота проецируется на диагональ.((
strateg66 вне форума Ответить с цитированием
Старый 12.01.2010, 06:00   #16
IT-man
АльTRUEи$т
Форумчанин
 
Аватар для IT-man
 
Регистрация: 19.03.2009
Сообщений: 784
По умолчанию

Проблема указанная в посте 13 решается проще нужно просто взять 3 другие точки для треугольника
Цитата:
«Никто не войдет в Рай, имея хотя бы крупицу гордыни в своем сердце». «Аллах Красив и любит красоту. Гордыня означает отказ от истины и высокомерие»
IT-man вне форума Ответить с цитированием
Старый 12.01.2010, 09:57   #17
Alex_FF
Удален
Форумчанин
 
Регистрация: 02.12.2009
Сообщений: 309
По умолчанию

пусть точки храняться в массиве X[1..4]
1. ищем левую нижнюю точку X[L].
2. меняем местами ее и первую точку X[1] <-> X[L]
3. сортируем три оставшиеся точки X[2], X[3] , X[4] по возрастанию полярного угла, измеряемого против часовой стрелки относительно точки X[1].
4. Вычисляем длины отрезков [X[1]; X[2]], [X[2]; X[3]], [X[3]; X[4]], [X[4]; X[1]]. Складываем это всё - это и есть периметр.

Последний раз редактировалось Alex_FF; 12.01.2010 в 22:40.
Alex_FF вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите написать программу нахождения площади и периметра на 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