28.11.2006, 21:41
общий
это ответ
Здравствуйте, Arian!
Ну, давайте (как в прошлой задаче, решить которую я Вам помогал) вначале вспомним геометрию и порассуждаем.
Буду верхнюю заштрихованную область считать первой (1) а нижнюю второй (2).
Пусть дана точка с координатами x и y.
Вопрос: принадлежит ли она области (2).
Условия принадлежания:
1) x<0
2) y<0
3) x^2+y^2<=1
Ну 1) и 2) я думаю понятно (условие принадлежания 3 четверти)
3) - принадлежание окружности с центром в т. O(0;0) и радиусом меньшим 1.
Для принадлежности области (1) делаем подобно:
1) x<0
2) y>0 (можно не брать, т.к. уравнению окружности удовлетворяют только такие значения переменной y)
3) x^2+(y-1)^2=1
Таким образом мы проверили, принадлежит ли точка левой половине окружности.
Но нужно еще обрезать ту часть, которая также принадлежит нижней окружности.
4) x^2+y^2>=1
Ну вот в принципе и все.
В приложении программа выдает ответ на принадлежность хотябы одной из областей, если нужен ответ принадлежности конкретно какой-то области, то я думаю, Вам будет несложно переделать программу, ведь все рассуждения уже есть.
Удачи!
Приложение:
var x,y:real;begin writeln(‘Vvedite koordinaty tochki M.‘); write(‘x=‘); readln(x); write(‘y=‘); readln(y); if ((x<0) and (y<0) and (x*x+y*y<=1)) or ((x<0) and (x*x+sqr(y-1)<=1) and (x*x+y*y>=1)) then writeln(‘Prinadlegit‘) else writeln(‘Ne prinadlegit‘); readln;end.