fhdhkfhydkfhs
31.03.2022 11:12

Напишите функцию Rectangle intersect(Rectangle r1, Rectangle r2), которая вернёт пересечение прямоугольников r1 и r2 — новый прямоугольник.
Если у прямоугольников r1 и r2 нет пересечения, то допускается в качестве результата работы функции вернуть любой неположительный по площади прямоугольник.
Используя функцию rectangle_square, описанную в предыдущей задаче, посчитайте площадь пересечения прямоугольников, вводимых с клавиатуры.
Формат входных данных
Даны координаты двух пар точек, заданных с точностью не более 2 знаков после десятичной точки. Координаты не превосходят по модулю 1000.
Последовательность чисел следующая:
- точка r1.p1: x и y
- точка r1.p2: x и y
- точка r2.p1: x и y
- точка r2.p2: x и y
Формат выходных данных
Требуется вывести одно вещественное число — площадь пересечения прямоугольников с точностью не менее 6 знаков после десятичной точки. Если прямоугольники не пересекаются, то выведите 0.
входные данные
4.0 6.0 3.0 9.0
1.0 4.0 5.0 8.0
выходные данные
2.000000

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ВоСьМиКлAшKа
07.11.2021 00:19
ответ:LLLVRLVVVVRLRVRRRLLRVLRVRОбъяснение:

Так как используются только 3 символа L, R и V, представим их как 0, 1 и 2 соответственно. В таком случае, каждую последовательность из букв (уже цифр) мы можем рассматривать как число в трехзначной системе счисления.

Можем проверить: в условии сказано, что на 100-ом месте стоит строка RLVLL. Так как список начинается с нуля (LLLLL), то на сотом месте должно стоять число 99. Переводим в трёхзначную сс (смотрите вложение) и получаем 10200₃. Подставляем вместо 0-R, 1-R, 2-V и получаем RLVLL -- всё верно.

Теперь перейдём к задаче: нам нужно узнать последовательности под номерами 8, 81, 98, 110, 179. Переводим их в трёхзначную сс, предварительно уменьшив на 1 (т. к. последовательность начинается с нуля). Также добавим лишние нули (L) слева при необходимости, чтобы последовательность состояла из 5 символов. Смотрим:

8      →    7₁₀        =     000 21₃     =     LLLVR81     →    80₁₀     =     0 2222₃    =     LVVVV98    →    97₁₀     =     10121₃        =     RLRVR110    →    109₁₀   =     11001₃        =     RRLLR179   →    178₁₀    =     20121₃       =     VLRVR
Составим все возможные последовательности из пяти букв, используя только символы L, R, V, и выпишем
0,0(0 оценок)
Ответ:
ellalavrina
14.11.2022 12:40
ответ:LLLVRLVVVVRLRVRRRLLRVLRVRОбъяснение:

Так как используются только 3 символа L, R и V, представим их как 0, 1 и 2 соответственно. В таком случае, каждую последовательность из букв (уже цифр) мы можем рассматривать как число в трехзначной системе счисления.

Можем проверить: в условии сказано, что на 100-ом месте стоит строка RLVLL. Так как список начинается с нуля (LLLLL), то на сотом месте должно стоять число 99. Переводим в трёхзначную сс (смотрите вложение) и получаем 10200₃. Подставляем вместо 0-R, 1-R, 2-V и получаем RLVLL -- всё верно.

Теперь перейдём к задаче: нам нужно узнать последовательности под номерами 8, 81, 98, 110, 179. Переводим их в трёхзначную сс, предварительно уменьшив на 1 (т. к. последовательность начинается с нуля). Также добавим лишние нули (L) слева при необходимости, чтобы последовательность состояла из 5 символов. Смотрим:

8      →    7₁₀        =     000 21₃     =     LLLVR81     →    80₁₀     =     0 2222₃    =     LVVVV98    →    97₁₀     =     10121₃        =     RLRVR110    →    109₁₀   =     11001₃        =     RRLLR179   →    178₁₀    =     20121₃       =     VLRVR
Задача 3: Пятибуквенные последовательности Составим все возможные последовательности из пяти букв, и
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота