Площадь объединения двух прямоугольников
RectDelta предлагает рабочее пространство проекта для обсуждения арифметики прямоугольников с ИИ. Откройте нужную папку, изучите обработку пересечений совместимой моделью и проверьте предложенные ограничения вместе с кодом.
def union_area(first, second):
if any(type(v) not in (list, tuple) or len(v) != 4 for v in (first, second)):
raise ValueError("rectangle.container")
first, second = tuple(first), tuple(second)
for rectangle in (first, second):
if len(rectangle) != 4 or any(type(v) is not int for v in rectangle):
raise ValueError("rectangle.integer")
x0, y0, x1, y1 = rectangle
if x0 >= x1 or y0 >= y1:
raise ValueError("rectangle.bounds")
a, b, c, d = first
e, f, g, h = second
overlap = max(0, min(c, g) - max(a, e)) * max(0, min(d, h) - max(b, f))
return (c - a) * (d - b) + (g - e) * (h - f) - overlapПодключение
Базовый URL, учётные данные и доступный сервер.
Проект
Проверьте пересечение, вложенность и касание, отклоняя нулевую площадь и обратные границы до вычислений и сохраняя исходные данные.
Проверьте перед применением
Сравните фактическое поведение с ожидаемым. Если проверка не проходит, разберитесь в причине перед следующими изменениями.
def union_area(first, second):
if any(type(v) not in (list, tuple) or len(v) != 4 for v in (first, second)):
raise ValueError("rectangle.container")
first, second = tuple(first), tuple(second)
for rectangle in (first, second):
if len(rectangle) != 4 or any(type(v) is not int for v in rectangle):
raise ValueError("rectangle.integer")
x0, y0, x1, y1 = rectangle
if x0 >= x1 or y0 >= y1:
raise ValueError("rectangle.bounds")
a, b, c, d = first
e, f, g, h = second
overlap = max(0, min(c, g) - max(a, e)) * max(0, min(d, h) - max(b, f))
return (c - a) * (d - b) + (g - e) * (h - f) - overlapСвяжите геометрический код с получаемыми данными
RectDelta предоставляет рабочую среду программирования для Windows для обсуждения геометрического кода как части приложения, включая входные границы вокруг вычисления. Откройте проект и опишите происхождение координат и назначение результата. Попросите подключённого помощника изучить эти связи до предложения другой реализации арифметики.
Для задачи объединения прямоугольников укажите порядок координат, допустимый численный тип и обработку фигур, которые лишь касаются. Добавьте вложенные и перекрывающиеся прямоугольники как примеры ввода, затем обсудите сообщение о неверных границах. Эти решения задают конкретную цель проверки кода, не превращая пример вычисления в утверждение о встроенном геометрическом движке.
Проверяйте валидацию и арифметику вместе, запускайте проверки проекта с обычными и отклоняемыми фигурами. Подтвердите, что вызывающий код получает нужный результат, а входные данные остаются доступными без изменений для дальнейшей работы. RectDelta подключается к поддерживаемым сервисам, совместимым с OpenAI, или Anthropic с учётными данными при необходимости. Модель без ограничений можно выбрать, если её предлагает настроенная конечная точка; правила провайдера и возможности сервера по-прежнему определяют работу подключения. Сохраняйте приёмочные примеры в обсуждении, чтобы оценивать каждую правку по одному требованию приложения.
Условия геометрии перед изменением реализации
Что указать о входном прямоугольнике?
Задайте порядок координат, допустимые численные типы и требование положительности обоих измерений. Укажите, как должны отклоняться неверные контейнеры. Тогда помощник сможет проверить всю границу, не предполагая, что любые четыре значения описывают допустимую фигуру.
Зачем включать касающиеся прямоугольники в примеры?
Они отличают общую границу от перекрытия с положительной площадью. Укажите ожидаемый результат объединения и проверьте его напрямую вместе с раздельными и вложенными случаями, чтобы исправление отражало соглашение остального приложения.
Может ли проверка ввода измениться при упрощении арифметики?
Она может измениться случайно, поэтому обе части требуют проверки. Сравните принимаемые и отклоняемые случаи до принятия исправления. Более короткое вычисление не должно молча разрешать обратные границы или типы чисел, исключённые исходными условиями.
Как проверить сохранность входных данных?
Сохраните копии исходных контейнеров координат и сравните после вызова. Если последующие шаги приложения используют их повторно, одной правильной площади недостаточно для подтверждения соблюдения всех условий реализации.
RectDelta · Обновлено 2026-10-25