Модераторы: Alx, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [c++] Задача, про точку и треугольник 
:(
    Опции темы
PIvO
Дата 1.6.2007, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



определить, принадлежит ли т. М(x,y) треугольнику с вершинами (-1,0),(0,1),(0,0) [в плоскости xOy]?
PM MAIL   Вверх
Sartorius
Дата 1.6.2007, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



 А что в ней занимательного? 
 Ну хотя б считаешь площадь трех треугольников MAB MAC MAB и сравниваешь с площадью ABC.
 
PM MAIL ICQ   Вверх
MaXL
Дата 4.6.2007, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Developer
**


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

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



Sartorius, мне кажется что вариант, который предложил ты не очень =) сложно будет сравнить площадь, т.к. если считать по формуле Герона, там будет корень..и будет приблежённо.
Я думаю, что для того, чтобы точка лежала в треугольнике нужно чтобы эта точка лежала хотябы в двух углах треугольника.
Ну чтобы узнать что точка M принадлежит к примеру углу ABC, нужно чтобы угол ABD был меньше угла ABC. Хотя если взять угол побольше...градусов 120, и точку поставить, не входящую в него, то угол всё таки получить меньше, но можно к примеру если в треугольнике есть такой угол, то с ним не работать=)


--------------------
MaXL
PM MAIL   Вверх
Sartorius
Дата 4.6.2007, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



MaXL, площадь треугольника это половина векторного произведения двух его сторон. Посчитать такой маленький определитель очень просто. 

Это сообщение отредактировал(а) Sartorius - 4.6.2007, 17:35
PM MAIL ICQ   Вверх
MaXL
Дата 4.6.2007, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Developer
**


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

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



Sartorius, а как найти это векторное произведение?=) просто в школе такое не учат =(
И ещё, всё равно ведь может что площадь получиться как-нить там 5/6, ну и при подсчёте трёх других площадей, тут прийдётся что-то придумывать, чтобы сравнивать можно было нормально.


--------------------
MaXL
PM MAIL   Вверх
Silent
Дата 5.6.2007, 09:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Не давите интеллектом! При чем здесь площади? Проверяем три условия - точка лежит левее прямой y=0, выше прямой x=0 и ниже прямой y=x-1:
Код

inline bool inside(double x, double y)
{
  return (y >= 0.0)&&(x <= 0.0)&&(y <= x-1.0);
}

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


Developer
**


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

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



Silent,  smile  smile  smile 
Кстатк да, мы тут с Sartorius начали решать наверно для треугольника с вершинами, коордитнаты которых будут заданы, во время выполнение...а PIvO ведь просил для определённого =))))


--------------------
MaXL
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Интересные и занимательные задачи по программированию | Следующая тема »


 




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


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

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