Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.98/40: Рейтинг темы: голосов - 40, средняя оценка - 4.98
42 / 42 / 5
Регистрация: 25.03.2014
Сообщений: 444

Указать (n-1)-звенную несамопересекающуюся замкнутую ломаную, проходящую через заданные точки

04.11.2014, 17:09. Показов 8854. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано n точек на плоскости. Указать (n-1)-звенную несамопересекающуюся замкнутую ломаную, проходящую через все эти точки. (Соседним отрезкам ломаной разрешается лежать на одной прямой.) Подсказка. Возьмем самую левую точку (т.е. точку с наименьшей x-координатой) и проведем из нее лучи во все остальные точки. Теперь упорядочим эти лучи снизу вверх, а точки на одном луче упорядочим по расстоянию от начала луча (это делается для всех лучей, кроме нижнего и верхнего). Ломаная выходит из выбранной (самой левой) точки по нижнему лучу, затем по всем остальным лучам (в описанном порядке) и возвращается по верхнему лучу.
Подскажите как вообще это делать ??? Что должно включать в себя программа и код?
1
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.11.2014, 17:09
Ответы с готовыми решениями:

За время n logn построить (n-1)звенную не пресекающую себя ломаную проходящую через все точки
Дано n точек на плоскости заданных своими декартовыми координатами. За время n logn построить (n-1)звенную не пресекающую себя ломаную...

Указать (n-1)-звенную несамопересекающуюся замкнутую ломаную, проходящую через все заданные точки
Дано n точек на плоскости. Указать (n-1)-звенную несамопересекающуюся замкнутую ломаную, проходящую через все эти точки. (Соседним отрезкам...

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

26
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13181 / 6817 / 1821
Регистрация: 18.10.2014
Сообщений: 17,254
06.11.2014, 23:00
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Dgaizer Посмотреть сообщение
у меня в строках 20 33 46 52 выдает одну и туже ошибку [C++ Error] Unit1.cpp(26): E2015 Ambiguity between 'Point' and '_fastcall Classes::Point(int,int)'
В коде у D_in_practice нет никакого 'Classes', поэтому в его коде такой ошибки быть не может. Это вы уже от себя что-то понадобавляли, что и привело к ошибке.
1
42 / 42 / 5
Регистрация: 25.03.2014
Сообщений: 444
06.11.2014, 23:07  [ТС]
TheCalligrapher, уж нет просто копировал вставил
https://www.cyberforum.ru/atta... 1415304423
Миниатюры
Указать (n-1)-звенную несамопересекающуюся замкнутую ломаную, проходящую через заданные точки  
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
13181 / 6817 / 1821
Регистрация: 18.10.2014
Сообщений: 17,254
06.11.2014, 23:19
Цитата Сообщение от Dgaizer Посмотреть сообщение
просто копировал вставил
Ну так а что такое 'vcl.h'? И что еще включается через 'vcl.h'?
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33403 / 21513 / 8236
Регистрация: 22.10.2011
Сообщений: 36,914
Записей в блоге: 12
06.11.2014, 23:45
Цитата Сообщение от Dgaizer Посмотреть сообщение
у меня в строках 20 33 46 52 выдает одну и туже ошибку
Надо было тему создавать не абы где, а в правильном разделе, по Билдеру... Замени везде (кроме объявления типа Point, разумеется) Point на ::Point, у тебя конфликт типов...
2
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
11.12.2014, 03:54
Немного потестировал алгоритм, в строке 49 ( и в 50 соответственно):
C++
1
double k1 = (begin.y - a[j].y) / (begin.x - a[j].x);
если
C++
1
begin.x == a[j].x
, то будет деление на ноль и программа вылетает.
0
 Аватар для D_in_practice
343 / 343 / 331
Регистрация: 02.10.2014
Сообщений: 666
11.12.2014, 06:21
Цитата Сообщение от _20_ Посмотреть сообщение
C++
1
begin.x == a[j].x
этого никогда не произойдет тк, до этого мы исключили все точки с координатами x = begin.x
0
0 / 0 / 0
Регистрация: 03.05.2014
Сообщений: 2
04.01.2016, 01:38
Это задача на применение полярных координат. Фактически, в подсказке - уже ответ! Вы выбираете себе "начало координат" с помощью назначения какой-нибудь крайней точки (слева, справа, снизу, сверху - не важно!) и соединяете мысленно лучами каждую точку. введя угол фи (для полярных координат) и имея луч, как радиус-вектор, вы можете спокойно двигаться по возрастающему углу (0 - 2*pi). Вот, собственно, и все. Реализуйте это в коде. У меня есть эта прога на java. Надо - дам ссылку в гите.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.01.2016, 01:38
Помогаю со студенческими работами здесь

Указать (n - 1)звездную не самопересекающуюся незамкнутую ломаную, проходящую через все эти точки
Дано n точек на плоскости. Указать (n - 1)звездную не самопересекающуюся незамкнутую ломаную, проходящую через все эти точки. (Соединим...

Построить прямую проходящую через 2 заданные точки не используя line
построить прямую проходящую через 2 заданные точки не используя line

Дано n точек на плоскости, за время n*logn построить (n-1)-звенную ломаную
Дано n точек на плоскости, заданных своими декартовыми координатами. За время n*logn построить (n-1)-звенную не пересекающую себя ломаную,...

Найти проекцию точки М(1,1,1) на прямую проходящую через точки М1(2,5,-3) и М2 (3,-2,2).
Найти проекцию точки М(1,1,1) на прямую проходящую через точки М1(2,5,-3) и М2 (3,-2,2).

Добавление точек в замкнутую ломаную линию
Всем здравствуйте. Есть массив точек (изначально он может состоять только из 1 точки). Интересует как добавить точки в ЗАМКНУТУЮ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Функция установки текстового статуса в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru