IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Множества
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 5
Пол: Женский
Реальное имя: Лена

Репутация: -  0  +



Помогите решить задачу!
Пусть n прямых на плоскости, заданных своими вершинами расположенными в произвольном порядке. Найти вершины наименьшего по площади многоугольника, содержащего данную точку А.


Сообщение отредактировано: Цири -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(Цири @ 28.02.2006 3:02) *

Пусть n прямых на плоскости, заданных своими вершинами расположенными в произвольном порядке. Найти вершины наименьшего по площади многоугольника, содержащего данную точку А.

Цири, обясни пожалуйста - при чем тут множества?? Если речь идет о множестве прямых, то это странно, а если тебе нужно использовать в проге паскалевские множества - то почему не сказал? Да и к какому месту их прикрутить?..

Задача непростая, причем в основном с точки зрения алгоритма. Я набросаю основную идею (что пришло в голову).
1. Выбираем прямую L, наиболее близкую к т.А
2. Находим основание перпендикуляра, опущенного из A на L (назовем K)
3. Находим все точки пересечения L с остальными прямыми (Mj).
4. Выбираем из них ближайшую к K, для которой векторное произведение (KA x KMj) больше нуля; называем ее N.
5. Повторяем все действия начиная с п.3 с прямой Lj (которая породила Mj=N) в качестве L и точкой N в качестве K. Запоминаем все точки N в массиве.
6. Выходим тогда, когда очередная Lj оказывается начальной прямой L.

Для облегчения восприятия добавлю, что это есть обход точки А по часовой стрелке начиная с ближайшей прямой.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Цири, здесь:
Цитата
Найти вершины наименьшего по площади многоугольника, содержащего данную точку А

что понимается под "МНОГОугольником"? Трех? Четырех? N-угольник? Выпуклость его имеет значение?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4





Группа: Пользователи
Сообщений: 5
Пол: Женский
Реальное имя: Лена

Репутация: -  0  +


Цитата(lapp @ 28.02.2006 8:42) *
Цири, обясни пожалуйста - при чем тут множества?? Если речь идет о множестве прямых, то это странно, а если тебе нужно использовать в проге паскалевские множества - то почему не сказал? Да и к какому месту их прикрутить?..

Методичку из которой я взяла задачу составляли ИДИОТЫ. И эта задача как там написано на множества и предполагаю что речь идет о множестве прямых. Такой алгоритм я и сама составить могу, а что - то поближе к Паскалю можно?

Цитата(volvo @ 1.03.2006 3:04) *

Цири, здесь:

что понимается под "МНОГОугольником"? Трех? Четырех? N-угольник? Выпуклость его имеет значение?

НЕЗНАЮ. Как написано в методичке я так и написала. А если бы в голове хоть какие то варианты по этой задачи были я ее сама бы сделала.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Ну, тогда извини, и решай сама...
Тебе же пытаются помочь, ты же еще и огрызаешься..

Нехорошо. nea.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Volvo, поскольку речь идет о пересечении прямых, и сказано, что многоугольник минимальный по площади, то ясно, что невыпуклым он быть просто не может. Что касается "много" - то это как получится. Проще всего набросать на бумагу несколько прямых, а потом попроставлять точки в разные псевдослучайные места - ситуация сразу проясняется. Задача составлена вполне толково, вот только с множествами кто-то (или они, или она, я склоняюсь к последнему) прошибся..
Цири, конечно, самомнения не занимать.. Я не буду возражать, если ты сотрешь мой алгоритм. Или скажи, что не возражаешь - я сам сотру. Пусть повторит хотя бы.. smile.gif

Не надо ничего удалять smile.gif Я пока скрыл твое первое сообщение. Потом откроем опять.

Сообщение отредактировано: volvo -


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

Репутация: -  2  +


Есть идея взять все возможные треугольники вычеслитьт их стороны, дальше вычеслить их площадь по формуле Герона а дальше просто посмотреть у какого треугольника будет площадь наименьшая, и вершина его - А и тогда это будет многоугольник с наименьшлей площадью с вершиной в точке А.


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Цитата(volvo @ 1.03.2006 1:25) *
Тебе же пытаются помочь, ты же еще и огрызаешься..

Нехорошо. nea.gif

Необижайся я не огрызаюсь а говорю как есть. Сама непойму что там хотят в этой задаче. Эта задача с методички в которой одни условия задач без комментариев. А по данному предмету у нас предусмотрены только практические занятия без лекционных. Вот таки дела.

Цитата(lapp @ 1.03.2006 2:37) *
Volvo, поскольку речь идет о пересечении прямых, и сказано, что многоугольник минимальный по площади, то ясно, что невыпуклым он быть просто не может. Что касается "много" - то это как получится. Проще всего набросать на бумагу несколько прямых, а потом попроставлять точки в разные псевдослучайные места - ситуация сразу проясняется. Задача составлена вполне толково, вот только с множествами кто-то (или они, или она, я склоняюсь к последнему) прошибся..

Ты прав это она да еще и не одна их две. Надо попробывать твой вариант и подключить к задаче мозг а то он у меня скоро атрафируется.
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 22.04.2025 8:28
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name