RRectDelta
AI-werkruimte voor code

Oppervlakte van twee verenigde rechthoeken

Bereken de verenigde oppervlakte van twee asgerichte rechthoeken met strikt stijgende gehele grenzen.

● ● ●RectDelta●
Werkprocessen · Oppervlakte van twee verenigde rechthoeken ×
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
✳Bereken de verenigde oppervlakte van twee asgerichte rechthoeken met strikt stijgende gehele grenzen.
✓ WijzigingenControleer vóór het toepassen ↗
Illustratie van de werkruimte
  1. Modellen

    Stel een OpenAI-compatibel of Anthropic-endpoint in met de basis-URL en zo nodig een API-sleutel. Test de verbinding. Een lokale modelserver moet actief zijn; externe hulpmiddelen kunnen apart gegevens versturen.

  2. Project

    Test overlap, insluiting en aanraking en weiger nuloppervlakte of omgekeerde grenzen vóór de berekening; behoud beide invoeren.

  3. Controleer vóór het toepassen

    Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.

Werkprocessen

Oppervlakte van twee verenigde rechthoeken

Werkprocessen ↗
Werkprocessen
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
AI-werkruimte voor code

Verbind geometriecode met de gegevens die ze ontvangt

RectDelta biedt een programmeeromgeving voor Windows om geometriecode als onderdeel van een toepassing te bespreken, inclusief de invoergrenzen rond de berekening. Open het project en beschrijf waar de coördinaten vandaan komen en waarvoor het resultaat wordt gebruikt. Vraag de verbonden assistent die relaties te onderzoeken voordat hij een andere implementatie van de berekening voorstelt.

Specificeer voor een rechthoekvereniging de coördinaatvolgorde, het geaccepteerde getaltype en de behandeling van vormen die elkaar alleen raken. Neem ingesloten en overlappende rechthoeken als voorbeeldinvoer en bespreek hoe ongeldige grenzen moeten worden gemeld. Die keuzes geven de codebeoordeling een concreet doel zonder de voorbeeldberekening tot een claim over een ingebouwde geometrie-engine te maken.

Beoordeel validatie en berekening samen en voer de projectcontroles uit met zowel gewone als afgewezen vormen. Bevestig dat de aanroeper het bedoelde resultaat krijgt en dat invoer ongewijzigd beschikbaar blijft voor vervolgwerk. RectDelta verbindt met ondersteunde OpenAI-compatibele of Anthropic-diensten, met inloggegevens waar nodig. Een onbeperkt model kan worden gekozen als het geconfigureerde endpoint dat aanbiedt; providerregels en servermogelijkheden blijven de verbinding bepalen. Houd de acceptatievoorbeelden in het gesprek, zodat elke voorgestelde wijziging aan dezelfde toepassingseis kan worden getoetst.

Geometrieafspraken vóór implementatiewijzigingen

Wat moet ik over rechthoekinvoer specificeren?

Vermeld de coördinaatvolgorde, geaccepteerde numerieke typen en of beide afmetingen positief moeten zijn. Geef aan hoe ongeldige containers moeten falen. De assistent kan dan de hele grens beoordelen in plaats van aan te nemen dat elke invoer met vier waarden een aanvaardbare vorm beschrijft.

Waarom rakende rechthoeken in testgevallen opnemen?

Ze onderscheiden gedeelde grenzen van overlap met positieve oppervlakte. Vermeld het verwachte verenigingsresultaat en test dat direct, samen met losse en ingesloten gevallen, zodat de patch de geometrieconventie van de rest van je toepassing volgt.

Kan validatie veranderen bij het opschonen van een berekening?

Dat kan onbedoeld gebeuren, dus beide verdienen beoordeling. Vergelijk geaccepteerde en afgewezen invoergevallen voordat je de patch behoudt. Een kortere berekening mag niet stilzwijgend omgekeerde grenzen of getaltypen toelaten die de oorspronkelijke afspraken uitsluiten.

Hoe controleer ik het behoud van invoer?

Bewaar kopieën van de oorspronkelijke coördinaatcontainers en vergelijk ze na de aanroep. Als latere toepassingsstappen ze hergebruiken, is alleen een correcte oppervlakte onvoldoende bewijs dat de voorgestelde implementatie alle afspraken respecteert.

Download voor Windows ↗

RectDelta · Bijgewerkt 2026-10-25