В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История

Даны действительные числа x, y. Создайте программу, чтобы узнать, принадлежит ли точка с координатами (x, y) области, показанной на рисунке. На языке C ++​


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

Показать ответ
Ответ:
ДашаКошкина1
ДашаКошкина1
02.03.2021 23:42

Код в файле

Объяснение:

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

Для прямоугольника достаточно, чтобы было соблюдено условие того, что x >= 0 и x <= r/ 2, а y <= 0 и > r - это можно заметить даже по картинке

Проверку на принадлежность сектору круга делаем исходя из уравнения окружности и теоремы Пифагора

x^2 + y^2 = r^2 - уравнение окружности

r^2 = x^2 + y^2 - длинна гипотенузы в треугольнике с катетами x, y.

Так как по определению окружности мы знаем, что все точки равноудалены от центра, то достаточно убедиться, что длина гипотенузы при треугольнике с катетами x,y <= радиусу сектора, при этом не имеет значения, в какой четверти уже окружности мы будем проверять это равенство.

Для принадлежности точки оставшемуся треугольнику убедимся, что x <= 0 и x >= r, а y > 0 и y < r/2, то далее нам останется проверить, что точка C(x, y) лежит под прямой, которую образуют точки A(-r, 0), B(0, r/2) или же для решения рассмотрим 2 вектора AB и AC и из определения их произведения мы выясним, по какую сторону лежит точка C. Если ABxAC > 0, то C лежит справа, если ABxAC = 0, то C лежит на AB, что нам и нужно. Имеем формулу:

A(x1, y1), B(x2, y2), C(x3, y3)

(х3 - х1) * (у2 - у1) - (у3 - у1) * (х2 - х1) >= 0

и включая уже точки из самой задачи:

A(x1, 0), B(0, y2), C(x3, y3)

упростим и расчётную формулу:

(х3 - х1) * у2 - у3  * x1 >= 0

0,0(0 оценок)
Популярные вопросы: Другие предметы
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота