Задача:
Даны действительные числа [latex]x[/latex], [latex]y[/latex]. Определить, принадлежит ли точка с координатами [latex]x[/latex], [latex]y[/latex] заштрихованной части плоскости.
x | y | x*x+y*y | r | Результат | Комментарий |
1 | 1 | 2 | 1 | Не принадлежит | Пройден |
0 | 0 | 0 | 1 | Принадлежит | Пройден |
0,5 | 0,3 | 0,34 | 1 | Принадлежит | Пройден |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#include <stdio.h> #include <math.h> int main() { double x, y, r=1; scanf ("%lf %lf", &x, &y); printf ("x: %0.2lf\n", x); printf ("y: %0.2lf\n", y); printf ("r: %lf\n", r); if((x*x)+(y*y)<=r) printf ("Принадлежит окружности \n"); else printf ("Не принадлежит окружности \n"); return 0; } |
Решение:
Уравнение окружности задается формулой: [latex]\left(x-x_{0} \right)^{2}+\left(y-y_{0} \right)^{2}=r^{2}[/latex].
Так как у нас единичный круг, то [latex]r=1[/latex] и уравнение окружности можно записать следующим образом: [latex]x^{2}+y^{2}=r[/latex].
Что бы точка принадлежала окружности, нужно чтоб выполнялось условие [latex]x^{2}+y^{2}\leq r[/latex].
Если же [latex]x^{2}+y^{2}>r[/latex], то точка не будет принадлежать заштрихованной части.
Работу программы можно посмотреть тут.
Для отправки комментария необходимо войти на сайт.