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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
Leeshak
0 / 0 / 0
Регистрация: 06.06.2014
Сообщений: 8
#1

Принадлежит ли точка с координатами (x,y) заданной фигуре - C++

06.06.2014, 06:49. Просмотров 1632. Ответов 25
Метки нет (Все метки)

c++ составить программу, которая определяет, принадлежит ли точка с координатами (x,y) объединению закрашенных областей данного графика. значение координат ввести с клавиатуры. ответ в развернутом виде вывести в консоль . в случае необходимости организовать ввод дополниткльных параметров графикав
0
Миниатюры
Принадлежит ли точка с координатами (x,y) заданной фигуре  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.06.2014, 06:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Принадлежит ли точка с координатами (x,y) заданной фигуре (C++):

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

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

Разработать программу, определяющую принадлежит ли точка заданной фигуре - C++
Подскажите пожалуйста, зачем нужен "!" в выражении (x*x+y*y<=1 && !(x>0 && y<0)). Оно правильно только не понимаю для чего тут "!". ...

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

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

Определить принадлежит ли точка с заданными координатами к заданной окружности - C++
Определить принадлежит ли точка с координатами x, y окружности радиус которой r , а координаты центра а и в. Если точка принадлежит...

25
Kuzia domovenok
2030 / 1874 / 168
Регистрация: 25.03.2012
Сообщений: 6,451
Записей в блоге: 1
09.06.2014, 11:56 #16
Voivoid, то есть мозгами вообще лень шевелить и ради решения на 4ре строчки нужно качать шесть гигов буста? и ещё тратить время на изучение его (автор явно начинает изучать С++)?
0
Leeshak
0 / 0 / 0
Регистрация: 06.06.2014
Сообщений: 8
09.06.2014, 12:03  [ТС] #17
Kuzia domovenok, просто не могу понят задачу( мне главное с решением разобраться.. А програму я напишу.
0
Kuzia domovenok
2030 / 1874 / 168
Регистрация: 25.03.2012
Сообщений: 6,451
Записей в блоге: 1
09.06.2014, 12:06 #18
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
bool точка_в_прямоугольнике =( условие );
bool точка_в_квадрате = ( условие );
bool точка_ниже_прямой = ( условие )
bool точка_правее_OY = ( условие );
bool точка_попала_в_область = 
   точка_в_прямоугольнике && !точка_в_квадрате && точка_ниже_прямой 
|| точка_в_прямоугольнике && точка_в_квадрате && !точка_ниже_прямой && точка_правее_OY 
|| точка_в_квадрате && точка_ниже_прямой && !точка_правее_OY;
 
if (точка_попала_в_область )
{
  //а-та-та!
}
1
IrineK
Заблокирован
09.06.2014, 12:10 #19
Цитата Сообщение от Leeshak Посмотреть сообщение
Можно еще пожалуйста варианты.
Можно подойти демократичней. Если квадрат и прямоугольник расположены так, что некоторых областей не существует, тогда вы просто не будете в них попадать.

Пусть А - внутренняя область квадрата, В - внутренняя область прямоугольника
Проверку на попадание в них несложно организовать отдельными булевыми функциями.

Тогда попадание в нижний закрашенный треугольник (он может быть и немного другой)
(x,y) Є А && x < 0 && y < x

Попадание в крайнюю правую подобласть прямоугольника:
(x,y) Є В && (x,y)!Є А && x > 0 && y < x && y > 0

Попадание в центральную область:
(x,y) Є А && (x,y) Є В && x>0 && y > x
0
Leeshak
0 / 0 / 0
Регистрация: 06.06.2014
Сообщений: 8
09.06.2014, 12:11  [ТС] #20
Kuzia domovenok, S_el, IrineK, всем спасибо за помощь.!!!)
0
Voivoid
675 / 278 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
09.06.2014, 17:56 #21
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
то есть мозгами вообще лень шевелить
Задача элементарнее некуда. Наличие мозга для её решения не требуется.

Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
ради решения на 4ре строчки нужно качать шесть гигов буста?
Ну, во-первых все разумные с++ программисты его давно и так уже скачали и используют. А во-вторых, в случае, если колбасить код руками, то будет совсем не 4 строчки, а целая простыня унылого императивного кода состоящего из всяческих сравнений, в котором кстати элементарно будет опечататься.

Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
и ещё тратить время на изучение его (автор явно начинает изучать С++)?
У меня нет времени на то чтобы точить пилу, мне нужно пилить!!!
0
S_el
2113 / 1633 / 308
Регистрация: 15.12.2013
Сообщений: 6,395
09.06.2014, 18:05 #22
Цитата Сообщение от Voivoid Посмотреть сообщение
Задача элементарнее некуда. Наличие мозга для её решения не требуется.
Не надо быть столь категоричным,эта задача достаточно сложна для начинающих.

Цитата Сообщение от Voivoid Посмотреть сообщение
А во-вторых, в случае, если колбасить код руками, то будет совсем не 4 строчки, а целая простыня унылого императивного кода состоящего из всяческих сравнений, в котором кстати элементарно будет опечататься.
В этом и состоит задача,чтобы новичок был внимателен к мелочам.
0
Kuzia domovenok
2030 / 1874 / 168
Регистрация: 25.03.2012
Сообщений: 6,451
Записей в блоге: 1
09.06.2014, 18:12 #23
Цитата Сообщение от Voivoid Посмотреть сообщение
если колбасить код руками, то будет совсем не 4 строчки
вот, наколбасил руками. Принадлежит ли точка с координатами (x,y) заданной фигуре Что тут унылого в упор не вижу.

Простыни тоже не замечается. А тут по сути именно 4 строчки! Достаточно разбить код на чётко обозначенные подзадачи и всё будет ясно новичку и без изучения буста.

А вот куча непонятного текста вида boost::geometry::model::d2:oint_xy::blablablablabla как раз и превратит школьную задачку в простыню текста!
0
Voivoid
675 / 278 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
09.06.2014, 18:24 #24
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
вот, наколбасил руками.
Хех, да, что уж там, тогда уж можно вообще в одну строчку:
bool результат = посчитать_результат();

Цитата Сообщение от S_el Посмотреть сообщение
Не надо быть столь категоричным,эта задача достаточно сложна для начинающих.
Задача сама по себе элементарна, просто, если все делать руками, то потребуется куча телодвижений.

Цитата Сообщение от S_el Посмотреть сообщение
В этом и состоит задача,чтобы новичок был внимателен к мелочам.
Тут по-сути чисто механическая работа по набиванию кода, размышлять особо не над чем. У меня есть сомнения в полезности такого рода занятий, но спорить на эту тему не буду.
0
Kuzia domovenok
2030 / 1874 / 168
Регистрация: 25.03.2012
Сообщений: 6,451
Записей в блоге: 1
09.06.2014, 19:14 #25
Цитата Сообщение от Voivoid Посмотреть сообщение
Хех, да, что уж там, тогда уж можно вообще в одну строчку:
bool результат = посчитать_результат();
у тебя в коде не законченное решение, а у меня законченное. Если бы ты действительно попытался показать практическое решение этой задачи с помощью буста, у тебя бы вышло всяко больше текста
C++
1
2
3
4
5
6
7
8
bool точка_в_прямоугольнике =( x>c && x<d && y>f && y<e );
bool точка_в_квадрате = ( x>a && x<b && y<k && y>m );
bool точка_ниже_прямой = ( x>y )
bool точка_правее_OY = ( x>0 );
bool точка_попала_в_область = 
   точка_в_прямоугольнике && !точка_в_квадрате && точка_ниже_прямой 
|| точка_в_прямоугольнике && точка_в_квадрате && !точка_ниже_прямой && точка_правее_OY 
|| точка_в_квадрате && точка_ниже_прямой && !точка_правее_OY;
Добавлено через 1 минуту
Цитата Сообщение от Voivoid Посмотреть сообщение
потребуется куча телодвижений.
где-же куча телодвижений??? Вот чтобы установить буст и написать на нём решение потребуется куча телодвижений!
0
Voivoid
675 / 278 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
09.06.2014, 19:52 #26
Посмотрел на рисунок и понял, что все гораздо проще, чем я предполагал. Да, здесь спокойно можно обойтись и без boost::geometry, причем действительно за 4 строчки:

C++
1
2
3
4
bool triangle  = x < 0 && y < x && y > m;
bool left_poly = x > 0 && x < b && y > x && y > f && y < k;
bool right_poly = x > b && x < d && y < x && y > e && y < f;
bool result = triangle || left_poly || right_poly;
0
09.06.2014, 19:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2014, 19:52
Привет! Вот еще темы с ответами:

Принадлежит ли точка фигуре - C++
Определить принадлежность точки областям, обозначенным прописными буквами A и B. Строчными буквами обозначены определяемые пользователем...

Определить принадлежит ли точка фигуре. - C++
Определить принадлежит ли точка M(x,y) фигуре. Минимальный набор входных данных задать с клавиатуры. Осуществить проверку на корректность...

Определить принадлежит ли точка фигуре - C++
Даны действительные числа x, y. Определить, принадлежит ли точка с координатами x, y заштрихованной части плоскости. Спасибо.

Определить, принадлежит ли данная точка заштрихованной фигуре - C++
Даны координаты точек X и Y, необходимо определить пренадлежит ли данная точка заштрихованной фигуре. :wall:


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

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Опции темы

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