RRectDelta
Środowisko programowania z AI

Pole sumy dwóch prostokątów

Oblicz pole sumy dwóch prostokątów równoległych do osi o ściśle rosnących granicach całkowitych.

● ● ●RectDelta●
Sposoby pracy · Pole sumy dwóch prostokątów ×
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
✳Oblicz pole sumy dwóch prostokątów równoległych do osi o ściśle rosnących granicach całkowitych.
✓ ZmianySprawdź przed zastosowaniem ↗
Ilustracja środowiska
  1. Modele

    Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.

  2. Projekt

    Sprawdź nakładanie, zawieranie i stykanie, odrzucając pole zero lub odwrócone granice przed arytmetyką i zachowując wejścia.

  3. Sprawdź przed zastosowaniem

    Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.

Sposoby pracy

Pole sumy dwóch prostokątów

Sposoby pracy ↗
Sposoby pracy
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
Środowisko programowania z AI

Połącz kod geometrii z otrzymywanymi danymi

RectDelta zapewnia środowisko programistyczne dla Windows do omawiania kodu geometrii jako części aplikacji, w tym granic danych wejściowych otaczających obliczenie. Otwórz projekt i opisz pochodzenie współrzędnych oraz zastosowanie wyniku. Poproś podłączonego asystenta o sprawdzenie tych relacji przed zaproponowaniem innej implementacji arytmetyki.

W zadaniu dotyczącym sumy dwóch prostokątów określ kolejność współrzędnych, akceptowany typ liczbowy i traktowanie figur, które tylko się stykają. Przedstaw prostokąty zawierające się w sobie i nakładające jako przykładowe wejścia, a potem omów zgłaszanie nieprawidłowych granic. Te decyzje dają przeglądowi kodu konkretny cel bez przedstawiania przykładowego obliczenia jako wbudowanego silnika geometrii.

Przejrzyj walidację i arytmetykę razem oraz uruchom kontrole projektu dla zwykłych i odrzucanych figur. Potwierdź, że kod wywołujący otrzymuje zamierzony wynik, a dane wejściowe pozostają niezmienione i dostępne do dalszej pracy. RectDelta łączy się z obsługiwanymi usługami zgodnymi z OpenAI lub usługami Anthropic, z danymi uwierzytelniającymi, gdy są potrzebne. Model bez ograniczeń można wybrać, gdy oferuje go skonfigurowany punkt końcowy; zasady dostawcy i możliwości serwera nadal regulują połączenie. Zachowaj przykłady akceptacyjne w rozmowie, aby każdą sugerowaną zmianę oceniać względem tego samego wymagania aplikacji.

Kontrakty geometrii przed zmianami implementacji

Co określić dla prostokąta wejściowego?

Podaj kolejność współrzędnych, akceptowane typy liczbowe oraz czy oba wymiary muszą być dodatnie. Uwzględnij sposób odrzucania nieprawidłowych kontenerów. Asystent może wtedy ocenić całą granicę, zamiast zakładać, że każde wejście czteroelementowe opisuje dopuszczalną figurę.

Dlaczego uwzględniać stykające się prostokąty w testach?

Odróżniają wspólną granicę od przecięcia o dodatnim polu. Podaj oczekiwany wynik sumy figur i przetestuj go bezpośrednio wraz z przypadkami rozłącznymi i zawierającymi się, aby poprawka odpowiadała konwencji geometrii reszty aplikacji.

Czy walidacja może zmienić się podczas porządkowania arytmetyki?

Może zmienić się przypadkowo, dlatego oba aspekty wymagają przeglądu. Porównaj akceptowane i odrzucane wejścia przed zachowaniem poprawki. Krótsze obliczenie nie powinno po cichu dopuszczać odwróconych granic ani typów liczbowych wykluczonych przez pierwotny kontrakt.

Jak sprawdzić zachowanie danych wejściowych?

Zachowaj kopie oryginalnych kontenerów współrzędnych i porównaj je po wywołaniu. Jeśli dalsze kroki aplikacji używają ich ponownie, samo poprawne pole nie wystarcza, by wykazać zgodność proponowanej implementacji z pełnym kontraktem.

Pobierz dla Windows ↗

RectDelta · Zaktualizowano 2026-10-25