Принадлежит ли точка с координатами (х, у) заданной области? - C (СИ)

Узнай цену своей работы

Формулировка задачи:

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

Решение задачи: «Принадлежит ли точка с координатами (х, у) заданной области?»

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{
  int isInsideEllipse = 0;
  int isOutsideAngle = 0;
 
  double x = 0.0;
  double y = 0.0;
  double k1 = -2.0 / 3.0;
  double k2 = 1.0;
  double b1 = 19.0 / 3.0;
  double b2 = -2.0;
  const double b = 3.5;
  const double a = 1.5;
 
  scanf("%lf", &x);
  scanf("%lf", &y);
 
  if ((((x - 4.5) * (x - 4.5)) / (a * a)) + (((y - 3.5) * (y - 3.5)) / (b * b)) <= 1.0)
  {
    isInsideEllipse = 1;
  }
 
  if ((x >= 5) || (y >= k1 * x + b1) || (y <= k2 * x + b2))
  {
    isOutsideAngle = 1;
  }
 
  if (isInsideEllipse && isOutsideAngle) printf("Yes\n");
  else printf("No\n");
 
  return 0;
}

Объяснение кода листинга программы

  1. Включаем файл с библиотекой функций для работы с вводом/выводом (stdio.h)
  2. Задаем начальные значения переменных:
    • isInsideEllipse = 0 (принадлежит ли точка к эллипсу)
    • isOutsideAngle = 0 (принадлежит ли точка к заданному углу)
    • x = 0.0
    • y = 0.0
    • k1 = -2.0/3.0
    • k2 = 1.0
    • b1 = 19.0/3.0
    • b2 = -2.0
    • b = 3.5
    • a = 1.5
  3. Считываем значения координат x и y с помощью функции scanf
  4. Вычисляем значения для проверки принадлежности точки к эллипсу:
    • если сумма квадратов разностей координат точки и центров эллипса, деленная на квадрат большой полуоси, меньше или равна 1, то точка принадлежит эллипсу
  5. Вычисляем значения для проверки принадлежности точки к заданному углу:
    • если x больше или равно 5, или y больше или равно k1x + b1, или y меньше или равно k2x + b2, то точка принадлежит заданному углу
  6. Проверяем оба условия одновременно:
    • если точка принадлежит и эллипсу, и заданному углу, выводим Yes
    • в противном случае выводим No

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5
Похожие ответы