Попадание точки в заданную область - C (СИ) (70144)

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

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

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

Решение задачи: «Попадание точки в заданную область»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <locale.h>
  4.  
  5.  
  6. int main(int argc, char *argv[])
  7. {
  8.         setlocale(LC_ALL, "rus");
  9.         float x,y,z,r,f,line;
  10.  
  11.         printf("Введите радиус окружности:\n");
  12.         scanf("%f", &r); // считываем радиус сферы
  13.         printf("Введите абциссу точки x:\n");
  14.         scanf("%f", &x); // считываем абсциссу точки
  15.         printf("Введите ординату точки y:\n");
  16.         scanf("%f", &y); // считываем ординату точки
  17.         printf("Введите ординату прямой:\n");
  18.         scanf("%f", &line);
  19.         while(line>=r)
  20.         {
  21.             printf("Введите ординату прямой, которая пересекает окружность:\n");
  22.             scanf("%f", &line);
  23.         }
  24.  
  25.         f = pow(0-x,2)+pow(0-y,2); // x^2 + y^2
  26.         if ( f<= pow(r,2)&&(y<=line))
  27.         printf("Точка попала!");
  28.         else  printf("Не попала((((\n");
  29.  
  30.     return 0;
  31. }

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

  1. Устанавливаем локальную настройку на русскую раскладку клавиатуры.
  2. Объявляем переменные: x, y, z, r, f, line типа float.
  3. Запрашиваем у пользователя ввод радиуса окружности и сохраняем его в переменной r.
  4. Запрашиваем у пользователя ввод абсциссы точки x и сохраняем ее в переменной x.
  5. Запрашиваем у пользователя ввод ординаты точки y и сохраняем ее в переменной y.
  6. Запрашиваем у пользователя ввод ординаты прямой и сохраняем ее в переменной line.
  7. Пока значение переменной line больше или равно радиусу окружности r, выполняем следующие действия: Запрашиваем у пользователя ввод ординаты прямой, которая пересекает окружность и сохраняем ее в переменной line.
  8. Вычисляем значение переменной f как сумму квадратов абсциссы и ординаты точки (x^2 + y^2).
  9. Проверяем условие: если значение переменной f меньше или равно квадрату радиуса окружности r и ордината y меньше или равна значению переменной line, то выводим сообщение Точка попала!.
  10. В противном случае выводим сообщение Не попала(().
  11. Возвращаем 0, чтобы указать, что программа успешно завершилась.

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


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

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

8   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы