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

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

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

> Треугольник с заданными вершинами, обход по часовой стрелке
wilin
сообщение 14.10.2007 15:42
Сообщение #1


Новичок
*

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

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


Здравствуйте, дорогие форумчане!

Очень надеюсь на вашу помощь, поскольку сама измучалась предположениями. Условие задачи таковое:

Заданы координаты треугольника. Вывести их в порядке обхода по часовой стрелке blink.gif

Как-то после прочтения условия мне показалось, что можно вычислить расстояние от точки до начала координат, потом найти угол поворота между тем отрезкой с расстоянием. А потом сортировать по принципу - у кого больше угол, да еще и больше длина отрезка, тот первый, у кого поменьше - второй и т.д. Правильно ли я мыслю, или в этом алгоритме есть подводные камни?
Поделить, пожалуйста, своими мыслями. Буду рада и решению smile.gif Но пуще - наводке.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Valery
сообщение 19.10.2007 8:28
Сообщение #2





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

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


Наверное тема уже неактуальна.
Так, по следам решил добавить.
Может сделать так:
1. в заданном треугольнике выбрать произвольную внутреннюю точку
2. принять ее за начало координат
3. перейти в полярную систему координат
4. сортировать вершины по углу поворота в порядке, какой вам требуется, хоть по возрастанию, хоть по убыванию.

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

Хочу услышать ваше мнение по данному способу.
smile.gif

P.S. Уже после наприсания пришла в голову мысль по шагу первому:
Для произвольного треугольника, ну или выпуклого многоугольника (X1,Y1,X2,Y2,..., Xn,Yn), будет ли точка с координатами
X=(X1+X2+...+Xn)/n
Y=(Y1+Y2+...+Yn)/n
лежать внутри, т.е. удовлетворять п.1 для последующего обхода по часовой или против часовой стрелки?
Ваши мнения?

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

Сообщений в этой теме
wilin   Треугольник с заданными вершинами   14.10.2007 15:42
compiler   я думаю, что вместо начала координат, надо взять ц...   14.10.2007 15:54
klem4   Ход мыслей верный, только мне кажется длина отрезк...   14.10.2007 15:55
wilin   Спасибо за ответы :) Как поможет в этом деле центр...   14.10.2007 15:59
volvo   Антипример: (для точек A и B твой алгоритм сбои...   14.10.2007 16:05
compiler   Антипример: я уже нарисовал и хотел выкладывать т...   14.10.2007 16:06
wilin   и в этом случае вычислять расстояние? :)   14.10.2007 16:09
compiler   и в этом случае вычислять расстояние? :) ну, ко...   14.10.2007 16:33
klem4   а если просто выводить точки по увеличению координ...   14.10.2007 16:25
volvo   wilin, проще всего будет найти координаты центра т...   14.10.2007 16:31
wilin   Ребята, я застопорилась :( так не смогла... С ...   14.10.2007 16:31
wilin   А как найти координаты центра тяжести плоского тре...   14.10.2007 16:36
volvo   Считай веса одинаковыми, например, единичными...   14.10.2007 16:41
klem4   мой последний вариант крайне не верен :)   14.10.2007 16:47
wilin   klem4, почему? :) извините за тупой вопрос, но к...   14.10.2007 16:51
klem4   потому что возможен вариант, при котором более ...   14.10.2007 16:59
wilin   пока сделала так... cx:=(x1+x2+x3)/3; cy:=(y1+y2...   14.10.2007 17:09
volvo   wilin, ты немного не то печатаешь... Надо распечат...   14.10.2007 17:31
Lapp   Насколько я понимаю, нужно использовать вектора ст...   14.10.2007 23:17
wilin   Ребята, спасибо всем большое за помощь! :) Уви...   14.10.2007 23:32
Valery   Наверное тема уже неактуальна. Так, по следам реши...   19.10.2007 8:28
volvo   А ты внимательно читал все, что было предложено до...   19.10.2007 9:24


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

 



- Текстовая версия 20.07.2025 18:32
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"