0 / 0 / 0
Регистрация: 20.09.2019
Сообщений: 1
1

Определение принадлежности точек заштрихованной фигуре

20.09.2019, 10:28. Показов 2394. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не могу никак написать прогу, я просто задолбался. Нужно составить программу, определяющую принадлежность точек заштрихованной фигуре. Я тупой, никак не могу подобрать правильно условие, всегда что-то не так.
Пробовал соединить точку с 4-мя вершинами ромба, тем самым получив 4 треугольника, и если сумма их площадей ровна площади ромба, то точка принадлежит фигуре. Но все написано не пойми как, даже с ромбом ничего не вышло, а я круг еще даже не пробовал выколоть.
Фотка фигуры:
Изображения
 
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.09.2019, 10:28
Ответы с готовыми решениями:

Определение принадлежности точки фигуре
Всем привет. Есть задача определения принадлежности точки фигуре. Как думаете, нормальный...

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

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

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

8
Заблокирован
20.09.2019, 18:12 2
Цитата Сообщение от c2088576 Посмотреть сообщение
даже с ромбом ничего не вышло
C++
1
y>=0.9*x-1.8 && y<=0.9*x+1.8 && y<=-0.9*x+1.8 && y>=-0.9*x-1.8
ромб
0
817 / 504 / 211
Регистрация: 19.01.2019
Сообщений: 1,196
21.09.2019, 20:05 3
C++
1
2
3
4
5
bool isInArea(double x, double y) {
    return fabs(x) <= 2
        && fabs(y) <= 1.8 - (fabs(x) * 0.9)
        && x * x + y * y > 0.64;
}
0
7430 / 5022 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
21.09.2019, 20:15 4
Цитата Сообщение от nalbe666 Посмотреть сообщение
fabs(x) <= 2
не лишнее ?
Цитата Сообщение от nalbe666 Посмотреть сообщение
x * x + y * y > 0.64;
x * x + y * y >= 0.64;
0
817 / 504 / 211
Регистрация: 19.01.2019
Сообщений: 1,196
21.09.2019, 20:18 5
Действительно, это там лишнее.
А включать ли границу круга это философский вопрос.
0
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
21.09.2019, 21:39 6
С учётом того, что квадратный ромб — это |x|+|y| = 1, проще написать:
return (fabs(x)+fabs(y)/0.9)<=2 && (x*x+y*y) < 0.8*0.8;
0
7430 / 5022 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
21.09.2019, 22:19 7
Цитата Сообщение от nalbe666 Посмотреть сообщение
А включать ли границу круга это философский вопрос
то есть границы ромба включили, а границы круга не нужно ? нет здесь никакой философии. если граница не включается она изображается пунктирной линией.

New man, можно чуть подробнее, как связан квадратный ромб (квадрат) с этой задачей ?
0
817 / 504 / 211
Регистрация: 19.01.2019
Сообщений: 1,196
21.09.2019, 22:21 8
Yetty, Теперь буду знать.
0
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
23.09.2019, 01:58 9
Yetty, ну, смотри.
1) Для ромба-квадрата формула |x|+|y| = 1.
2) Для любой фигуры справедливо, что мы можем сузить её по какой-то оси в n раз, заменив все вхождения соответствующуей переменной на произведение переменной и n.

В случае фигуры из условия выходит уравнение |0.5x| + |x/1.8| = 1

И дальше я просто упростил.

Вообще, это свойство наиболее очевидно для окружностей (превращение их с помощью коэффициентов в эллипсы). Если определить понятие окружности степени n как https://www.cyberforum.ru/cgi-bin/latex.cgi?|x|^n + |y|^n = rad^n, то обычные окружности будут окружностями степени 2, ромбы с углами на осях координат — степени 1, а квадраты со сторонами, перпендикулярными осям — степени https://www.cyberforum.ru/cgi-bin/latex.cgi?\infty. И их все можно растягивать, добавляя коэффициент к выражению под модулем.
0
23.09.2019, 01:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2019, 01:58
Помогаю со студенческими работами здесь

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

Уравнение принадлежности некоторой точки к заштрихованной области параболы
Дана парабола ограниченная двумя прямыми, проходящих через начало координат. Нужно создать...

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

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru