Составьте программу, по которой выведется значение true, если точка с заданными координатами (х;у) лежит внутри заштрихованной области и false-в противном случае
В первой четверти (x > 0, y > 0) заштрихована четверть окружности с началось в центре координат и радиусом 6. Уравнение этой окружности , тогда точка попадает в заштрихованную область, если . Сюда же можно добавить и отрезок от 0 до 6 по оси абсцисс.
В четвертой четверти (x > 0, y < 0) заштрихован треугольник. Граница проходит через точки (0, -6) и (6, 0), уравнение - линейная функция y = x - 6. Сюда будут попадать точки, для которых y > x - 6.
Собираем условия вместе и можно писать программу.
Код (PascalABC.NET):
begin
var (x, y) := ReadReal2;
if (x > 0) and (y >= 0) and (x * x + y * y < 36) then
В первой четверти (x > 0, y > 0) заштрихована четверть окружности с началось в центре координат и радиусом 6. Уравнение этой окружности , тогда точка попадает в заштрихованную область, если . Сюда же можно добавить и отрезок от 0 до 6 по оси абсцисс.
В четвертой четверти (x > 0, y < 0) заштрихован треугольник. Граница проходит через точки (0, -6) и (6, 0), уравнение - линейная функция y = x - 6. Сюда будут попадать точки, для которых y > x - 6.
Собираем условия вместе и можно писать программу.
Код (PascalABC.NET):
begin
var (x, y) := ReadReal2;
if (x > 0) and (y >= 0) and (x * x + y * y < 36) then
write('true')
else if (x > 0) and (y < 0) and (y > x - 6) then
write('true')
else
write('false')
end.
Код (Python 3):
x, y = map(float, input().split())
if x > 0 and y >= 0 and x * x + y * y < 36:
print('true')
elif x > 0 and y < 0 and y > x - 6:
print('true')
else :
print('false')
Пример ввода:
3 5
Пример вывода:
true