Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.93
ilyasfromkz
-1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 46
#1

Принадлежит ли точка заштрихованной области - C++

16.09.2012, 15:10. Просмотров 1819. Ответов 11
Метки нет (Все метки)

Нужна помощь в выполнение задания, я в общем то разобрал задачу но есть несколько нюансов
http://savepic.net/3458418m.jpg
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.09.2012, 15:10     Принадлежит ли точка заштрихованной области
Посмотрите здесь:
C++ Принадлежит ли точка заштрихованной области?
C++ Принадлежит ли точка заштрихованной области
C++ Принадлежит ли точка заштрихованной области (C++ Builder)?
C++ Принадлежит ли данная точка к заштрихованной области
C++ Принадлежит ли данная точка к заштрихованной области
C++ Узнать, принадлежит ли точка заштрихованной области
C++ Определить, принадлежит ли точка заштрихованной области
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Рыжий Лис
Просто Лис
251 / 206 / 54
Регистрация: 17.05.2012
Сообщений: 813
Записей в блоге: 4
16.09.2012, 15:13     Принадлежит ли точка заштрихованной области #2
где задание?

Добавлено через 17 секунд
и код

Добавлено через 14 секунд
если он есть
veverix
39 / 39 / 2
Регистрация: 14.09.2012
Сообщений: 85
16.09.2012, 15:14     Принадлежит ли точка заштрихованной области #3
там 4 графика, по какому из них делать?
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
16.09.2012, 15:15     Принадлежит ли точка заштрихованной области #4
Какие нюансы? там просто нужно разбить каждую фигуру на прямые, найти уравнения этих прямых и через них проверить, лежит ли точка с координатами x, y в фигуре.
veverix
39 / 39 / 2
Регистрация: 14.09.2012
Сообщений: 85
16.09.2012, 15:31     Принадлежит ли точка заштрихованной области #5
Цитата Сообщение от Topotun Посмотреть сообщение
Какие нюансы? там просто нужно разбить каждую фигуру на прямые, найти уравнения этих прямых и через них проверить, лежит ли точка с координатами x, y в фигуре.
Нам давали задачу на 1 график обычно.
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
16.09.2012, 15:34     Принадлежит ли точка заштрихованной области #6
да без разницы какой график. смысл решения от этого не меняется. просто побольше уравнений прямых и чуть больше вычислений...
ilyasfromkz
-1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 46
16.09.2012, 15:58  [ТС]     Принадлежит ли точка заштрихованной области #7
я просто не оч еще программирую на с++ поэтому и прошу помощи кто может решить, 4 фигуры --> 4 задачи

Добавлено через 1 минуту
как же это сделать??
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
16.09.2012, 16:03     Принадлежит ли точка заштрихованной области #8
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// p1 - p3: вершины треугольника, ptest: проверяемая точка.
// VEC - структура, содержащая поля X, Y, написанная нами.
// Можно вполне использовать POINT из <windows.h>
// Возвращается TRUE, если принадлежит, иначе - FALSE.
BOOL IsInTriangle( VEC P1, VEC P2, VEC P3, VEC PTest )
{
  int a = (P1.X - PTest.X) * (P2.Y - P1.Y) - (P2.X - P1.X) * (P1.Y - PTest.Y);
  int b = (P2.X - PTest.X) * (P3.Y - P2.Y) - (P3.X - P2.X) * (P2.Y - PTest.Y);
  int c = (P3.X - PTest.X) * (P1.Y - P3.Y) - (P1.X - P3.X) * (P3.Y - PTest.Y);
 
  if ((a >= 0 && b >= 0 && c >= 0) || (a <= 0 && b <= 0 && c <= 0))
    return TRUE;
  else
    return FALSE;
}
пусть твоя точка имеет координаты (х,у), а вершины треугольника - (х1,у1), (х2,у2), (х3,у3).

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

точка с координатами (х,у) принадлежит полуплоскости, когда находится по одну из сторон некоторой прямой, а именно y-(kx+b)>=0 , где k, b - параметры данной прямой.

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

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

Это про треугольник..разберёшься с треугольником, поймёшь как остальное делать. там всё по аналогии.
ilyasfromkz
-1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 46
16.09.2012, 16:20  [ТС]     Принадлежит ли точка заштрихованной области #9
спасибо большое

Добавлено через 4 минуты
а как это будет выглядеть в с++??
veverix
39 / 39 / 2
Регистрация: 14.09.2012
Сообщений: 85
17.09.2012, 22:26     Принадлежит ли точка заштрихованной области #10
Первая
-2*x+y-2<0
-2*x-y+2>0
y<-1
Вторая
if y>-2 and y<0 then x>-1 and x<1;
if y>0 && y<1 then y<x
Третяя
-2*x+y-3<0
-x+3*y+1>0
if x>-2 and x<0 then y<x
if x>0 and x<1 then y<0
Четвертая
if x<-1 or x>1 then y>1 else y>x
ilyasfromkz
-1 / 1 / 0
Регистрация: 12.09.2012
Сообщений: 46
17.09.2012, 22:59  [ТС]     Принадлежит ли точка заштрихованной области #11
разве это условие принадлежности? это просто разветвления
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2012, 23:28     Принадлежит ли точка заштрихованной области
Еще ссылки по теме:
C++ Определить принадлежит ли точка заштрихованной области
C++ Определить, принадлежит ли точка заштрихованной области
Определить, принадлежит ди точка заштрихованной области графика C++
Определить, принадлежит ли точка с координатами x, y заштрихованной области C++
Определить принадлежит ли точка с координатами заштрихованной области C++

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

Или воспользуйтесь поиском по форуму:
veverix
39 / 39 / 2
Регистрация: 14.09.2012
Сообщений: 85
17.09.2012, 23:28     Принадлежит ли точка заштрихованной области #12
Цитата Сообщение от ilyasfromkz Посмотреть сообщение
разве это условие принадлежности? это просто разветвления
Посмотри внимательно. Это условия принадлежности, только описанные касаемо каждой функции по отдельности
Yandex
Объявления
17.09.2012, 23:28     Принадлежит ли точка заштрихованной области
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru