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

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

Войти
Регистрация
Восстановить пароль
 
KpecTHbIi
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 9
#1

принадлежность точки - C++

29.02.2012, 20:26. Просмотров 927. Ответов 14
Метки нет (Все метки)

Нужно проверить принадлежность точки заштрихованной области.
Не пойму как задавать, точнее что писать в ифе.
Кто бы помог мне или объяснил.
[IMG]http://s005.***********/i210/1202/87/15acdeab042e.jpg[/IMG]

http://s005.***********/i210/1202/87/15acdeab042e.jpg
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.02.2012, 20:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос принадлежность точки (C++):

Принадлежность точки к отрезку. - C++
УВАЖАЕМЫЕ ЭКСПЕРТЫ ПОМОГИТЕ УЛУЧшИТЬ АЛГОРИТМ ДЛЯ ДАННОЙ ЗАДАЧИ.... Точки и отрезки (Время: 2 сек) Дано N отрезков на числовой прямой...

Принадлежность точки N-угольнику. - C++
Ребята, помогите, ПОЖАЛУЙСТА. На плоскости задается выпуклый N - угольник целочисленными координатами своих вершин в порядке обхода по...

принадлежность точки прямоугольнику - C++
Задача: определить,принадлежит ли точка прямоугольнику. Заданы координаты точки и вершин прямоугольника. Прямоугольник может располагаться...

Принадлежность точки рисунку - C++
Разработать алгоритм и написать программу вычисления принадлежности точки с заданными координатами (x, y) заштрихованной об-ласти....

Принадлежность точки фигуре - C++
Программа для проверки, принадлежит ли точка с координатами (x, y) в заданной области Объясните, пожалуйста алгоритм. Заранее...

Принадлежность точки прямоугольнику - C++
написать функцию для проверки принадлежности точки с координатами (x,y) прямоугольнику x

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Xind
275 / 148 / 7
Регистрация: 05.11.2011
Сообщений: 425
Записей в блоге: 1
29.02.2012, 20:29 #2
Цитата Сообщение от KpecTHbIi Посмотреть сообщение
Не пойму как задавать, точнее что писать в ифе.
Подсказка: y = k * x + b
0
KpecTHbIi
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 9
29.02.2012, 20:30  [ТС] #3
Цитата Сообщение от Xind Посмотреть сообщение
Подсказка: y = k * x + b
да, а какое k x и b брать ?
0
Xind
275 / 148 / 7
Регистрация: 05.11.2011
Сообщений: 425
Записей в блоге: 1
29.02.2012, 20:32 #4
Цитата Сообщение от KpecTHbIi Посмотреть сообщение
да, а какое k x и b брать ?
см. свой рис.
0
KpecTHbIi
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 9
29.02.2012, 20:32  [ТС] #5
Цитата Сообщение от Xind Посмотреть сообщение
см. свой рис.
уже час смотрю, что то не выходит.
0
two steps
6 / 6 / 3
Регистрация: 13.06.2011
Сообщений: 27
29.02.2012, 22:22 #6
Тут программировать пока что рано, надо решить задачу математически.
0
AncinetHero
49 / 49 / 3
Регистрация: 22.05.2011
Сообщений: 326
29.02.2012, 22:26 #7
Почитайте мой пост тут:
Принадлежит ли точка области.
Задача аналогичная и алгоритм тот же.
0
KpecTHbIi
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 9
29.02.2012, 22:29  [ТС] #8
я вот где то знаки ровно не правильно расставил.
посмотрите кто может .
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include "iostream"
#include "cmath"
using namespace std;
int main(int argc, char* argv[])
{   float x,y;
cin>>x;
cin>>y;
if ((y<=3*x-5)&&(y<=-3*x+19) &&(y<=x+1)&&(y>=x/3 + 5/3) &&(y<=-x+9) && (y>-x/3 + 13/3))
{ cout<< "nalezhit`"<<endl;}
else 
{ cout<<"Ne nalezhit`"<<"\n";}
system("pause");
}
 Комментарий модератора 
Используйте теги форматирования кода!
0
AncinetHero
49 / 49 / 3
Регистрация: 22.05.2011
Сообщений: 326
29.02.2012, 22:30 #9
У тебя решение полностью не правильное, можешь конечно слушать других и ошибаться...
0
KpecTHbIi
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 9
29.02.2012, 22:34  [ТС] #10
Цитата Сообщение от AncinetHero Посмотреть сообщение
У тебя решение полностью не правильное, можешь конечно слушать других и ошибаться...
не могли бы вы подсказать где именно.
0
AncinetHero
49 / 49 / 3
Регистрация: 22.05.2011
Сообщений: 326
29.02.2012, 22:35 #11
Цитата Сообщение от AncinetHero Посмотреть сообщение
Почитайте мой пост тут:
Принадлежит ли точка области.
Задача аналогичная и алгоритм тот же.
Вот процитирую пост.
0
KpecTHbIi
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 9
29.02.2012, 22:40  [ТС] #12
Я бы решал следующим образом, возможно, не самым оптимальным...

Для начала, на вашем рисунке соединил бы мысленно точки с координатами (1;0) и (-1;1) (доштриховал бы треугольник)
Проверил принадлежность заданной точки "дополненной" фигуре. (это делается с помощью суммирования площадей)
Если нет - выходим.
Дальше, проверил бы принадлежность этой точки треугольнику с координатами (1;0) ; (-1;1) ; (0;0)
Если принадлежит - выходим.
Выводим "да".

P.S. У вас алгоритм совершенно не правильный.

не пойму ход вашей мысли и чем тот алгоритм не правильный ?
0
AncinetHero
49 / 49 / 3
Регистрация: 22.05.2011
Сообщений: 326
29.02.2012, 22:43 #13
Что вы не понимаете? Задача:
Есть выпуклый n-угольник с координатами вершин x_i,y_i , i=1..n . Нужно определить, принадлежит ли точка с координатами x,y этой фигуре.
Находится площадь этого n-угольника (это уже в поисковик сами, там она простая).
Находится площадь всех треугольников с 2 координатами многоугольника и искомой точки. ( если 4 вершины, тогда 1,2 вершин и заданой; 2,3 вершин и заданой; 3,4 вершин и заданой; 4,1 и заданой )
Суммируете и проверяете.
0
KpecTHbIi
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 9
29.02.2012, 22:50  [ТС] #14
тоесть вы предлагаете мне соединить координаты (1;2) c (4;7) и с (7;2) что бы образовался треугольник,
проверить принадлежит ли точка новой фигуре, а дальше что ?
0
AncinetHero
49 / 49 / 3
Регистрация: 22.05.2011
Сообщений: 326
29.02.2012, 22:54 #15
Если принадлежит, проверяете, чтобы она не принадлежала 3 треугольникам по краям.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.02.2012, 22:54
Привет! Вот еще темы с ответами:

Принадлежность точки фигуре - C++
Понять не могу почему не работает так как требуется. Хотя на код смотрю вроде всё верно. Может просто не вижу ошибку. Суть задания:...

Принадлежность точки к фигуре - C++
Добрый вечер. Задача: написать программу, создающую 4 рандомных координаты(x,y) и проверяющую принадлежность точки к фигуре(точки фигуры...

Принадлежность точки отрезку - C++
Добрый день, уважаемые форумчане. Помогите пожалуйста с задачей. В первой строке задано два целых числа n и m (1≤n≤50000, 1≤m≤50000) —...

принадлежность точки к кольцу - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; void main() { // Объявление переменных int x0, y0, r1, r2, x, y;...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.02.2012, 22:54
Ответ Создать тему
Опции темы

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