Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Пересечение треугольника окружностью C++ 
V
    Опции темы
maskofreallive
Дата 28.11.2010, 14:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 28.11.2010

Репутация: нет
Всего: нет



Дана такая задача:
На плоскости заданы N точек. У каждой точки свои координаты. Дана окружность радиуса R с центром в точке (0, 0). Нужно указать множество всех треугольников с вершинами в заданных точках, которые пересекают окружность и которые находятся в окружности.
Может кто поможет?
PM MAIL   Вверх
WhKitten
Дата 28.11.2010, 14:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 24.11.2010

Репутация: нет
Всего: нет



Если все вершины треугольника лежат в окружности, то треугольник лежит в окружности.
Если хотя бы одна вершина треугольника лежит в окружности, то треугольник лежит в окружности, либо пересекает её.
Лежит ли точка в окружности определяется по теореме Пифагора.

Это сообщение отредактировал(а) WhKitten - 28.11.2010, 14:27
PM MAIL   Вверх
sQu1rr
Дата 28.11.2010, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 3
Всего: 13



Вопросы:
1. Множество или кол-во?
2. Если у треугольника вершина на окружности, он ее пересекает? ( вообще нет )

Считаешь точки в окружности ( и на ней ), тоесть sqrt(X^2 + Y^2) <= R : Пусть это A
Остальные точки вне окружности. Пусть это B

Дальше чистой воды математика. Все треугольники с 1 или 2 точками из множества B - пересекают окружность. Все треугольники с точками из множества A - внутри нее

PS. Кажется немного опаздал  smile 

Это сообщение отредактировал(а) sQu1rr - 28.11.2010, 14:26
PM MAIL Skype GTalk   Вверх
maskofreallive
Дата 28.11.2010, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 28.11.2010

Репутация: нет
Всего: нет



1. В тексте задачи написано множество. Как я понял, в данном случае "указать множество" означает вывести на экран номера всех треугольников или координаты их вершин. 
2. Если у треугольника вершина на окружности, то он ее не пересекает.
PM MAIL   Вверх
sQu1rr
Дата 28.11.2010, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 3
Всего: 13



Цитата(maskofreallive @  28.11.2010,  16:34 Найти цитируемый пост)
1. В тексте задачи написано множество. Как я понял, в данном случае "указать множество" означает вывести на экран номера всех треугольников или координаты их вершин. 
2. Если у треугольника вершина на окружности, то он ее не пересекает. 


Ну так все понятно smile
Пусть множество А - см выше будет вектором и Б - вектор
Тогда
Код

for( auto A = vA.begin(); A != vA.end(); ++A )
    for( auto B = vB.begin(); B != vB.end(); ++B )
        for( auto C = B + 1; C != vB.end(); ++C )
            std::cout << "(" << A->x << "," << A->y << ")" ... << std::endl;

Это те, что пересекают. Для тех что не пересекают еще проще smile

Добавлено @ 23:08
ЗЫ
Это псевдокод, где vA и vB - векторы множеств А и Б соответственно... содержат структуры с координатами

Добавлено @ 23:09
ЗЫ№2
Перепутал B с A ))) Но смысл не меняется

Это сообщение отредактировал(а) sQu1rr - 29.11.2010, 10:04
PM MAIL Skype GTalk   Вверх
maskofreallive
Дата 29.11.2010, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 28.11.2010

Репутация: нет
Всего: нет



Благодарю, жаль плюсик поставить не могу. =(
PM MAIL   Вверх
JackYF
Дата 29.11.2010, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(maskofreallive @  29.11.2010,  20:09 Найти цитируемый пост)
жаль плюсик поставить не могу. =( 


Ну, это дело поправимое smile


M
JackYF
В следующий раз помечай тему решённой.




--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Wadsunsed
Дата 7.9.2022, 04:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 6.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
frepliefs
Дата 10.9.2022, 02:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 9.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
HiesAmesk
Дата 13.9.2022, 04:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 12.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
agrinly
Дата 16.9.2022, 19:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 16.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
guifiaria
Дата 7.10.2022, 07:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 6.10.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
Evacuucky
Дата 12.10.2022, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 12.10.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1606 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.