В программу вводятся координаты точки X и Y (вещественные
числа). Определить, принадлежит ли точка с координатами (X; Y)
заштрихованной части плоскости. Составить алгоритм решения задачи на алгоритмическом языке
Уравнение окружности ω (A; R) имеет вид (x – a)2 + (y – b)2 = R2, где a и b – координаты центра A окружности ω (A; R) .
def p1(x, y): return x*x + y*y > 1 def p2(x, y): return x*x + y*y < 4
RodegastПоковырял немного твою математику
Т. к. обе окружности находятся в центре, то принадлежность к области между ними будет описываться двумя предикатамиdef p1(x, y): return x*x + y*y > 1 def p2(x, y): return x*x + y*y < 4
>>> def p1(x, y): ... return x*x + y*y > 1 ... >>> def p2(x, y): ... return x*x + y*y < 4 ... >>> x, y = 1, 0 >>> >>> p1(x, y) and p2(x, y) False >>> p1(x, y), p2(x, y) (False, True) >>> >>> >>> x, y = 0, 1.5 >>> p1(x, y) and p2(x, y) True >>> >>> >>> x, y = 0, -1.5 >>> p1(x, y) and p2(x, y) True >>>
>>> def p(x, y): ... return x >= 0 and y >= 0 and 1 <= x * x + y * y <= 4 ... >>> p(0, 1) True >>> p(0, 1.5) True >>> p(1.5, 0) True >>> >>> p(0, -1) False >>> p(0, -1.5) False >>> p(-1.5, 0) False >>> >>> p(2.00000000000001, 0) False >>> p(2.000000000000000000000000000001, 0) True >>>