Определить, в какой области находится точка с координатами - C (СИ)
Формулировка задачи:
Определить, в какой области находится точка с координатами (x, y).
Решение задачи: «Определить, в какой области находится точка с координатами»
textual
Листинг программы
#include <stdio.h>
int main(void) {
double x, y, r, p;
scanf("%lf%lf%lf%lf", &x, &y, &r, &p);
int z;
if (y>0 || x<0)
z=0;
else
if (x*x+y*y<r*r)
if (y > -p*(x-r)*(x-r))
z=1;
else
z=2;
else
if (y > -p*(x-r)*(x-r))
if (x<r)
z=4;
else
z=5;
else
z=3;
printf("%d", z);
return 0;
}
Объяснение кода листинга программы
- В начале кода подключается стандартная библиотека для ввода-вывода
. - В функции main() объявляются переменные: double x, y, r, p; для хранения введенных пользователем значений.
- С помощью функции scanf() вводятся значения переменных x, y, r, p; в формате double.
- Объявляется переменная int z; для хранения результата вычислений.
- Выполняется проверка условия: if (y>0 || x<0) и в зависимости от результата переменной z присваивается значение 0.
- В противном случае выполняется проверка условия: if (xx+yy<rr) и в зависимости от результата выполняется следующая проверка: if (y > -p(x-r)*(x-r)) и в зависимости от результата переменной z присваивается значение 1 или 2.
- Если предыдущее условие не выполняется, то выполняется следующая проверка: if (y > -p(x-r)(x-r)) и в зависимости от результата выполняется следующая проверка: if (x<r) и в зависимости от результата переменной z присваивается значение 4 или 5.
- Если предыдущее условие не выполняется, то переменной z присваивается значение 3.
- С помощью функции printf() выводится значение переменной z.
- Функция main() возвращает 0, что означает успешный конец работы программы.