Штош, так как целевой язык не указан, буду писать на С++.
Задание на ту же тему встречаются на знаниях. Например, можно ещё посмотреть решение (znanija.com/task/38180875) вот этого задания в дополнение к прямому решению.
Код
#include <iostream>
#include <cmath>
class Point;
class Figure;
class Circle;
class Rectangle;
class UnitedFigure;
class ComplementedFigure;
class IntersectedFigure;
class Point {
public:
double x;
double y;
Point() = default;
Point(double _x, double _y) : x(_x), y(_y) {}
Point operator + (const Point& p) const {
return Point {x + p.x, y + p.y};
}
Point operator - (const Point& p) const {
return Point {x - p.x, y - p.y};
}
static Point max (const Point& p1, const Point& p2) {
return Point {std::max(p1.x, p2.x), std::max(p1.y, p2.y)};
}
static Point min (const Point& p1, const Point& p2) {
return Point {std::min(p1.x, p2.x), std::min(p1.y, p2.y)};
}
double vec_length () const {
return sqrt(x*x + y*y);
}
};
class Figure {
public:
virtual double distance_to (const Point &p) const = 0;
Answers & Comments
begin
var (x, y) := ReadReal2('Введи координаты');
if (x * x + y * y <= 9) and (x * x + y * y >= 4)
and (x <= 0) and (y >= 0) or
(x * x + y * y <= 4) and (x >= 9) and (y <= 0)
then
Println('Да')
else
Println('Нет');
end.
Штош, так как целевой язык не указан, буду писать на С++.
Задание на ту же тему встречаются на знаниях. Например, можно ещё посмотреть решение (znanija.com/task/38180875) вот этого задания в дополнение к прямому решению.
Код