Area dell’unione di due rettangoli
Calcola l’area dell’unione di due rettangoli allineati agli assi con limiti interi strettamente crescenti.
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) - overlapModelli
Configura un endpoint compatibile con OpenAI o Anthropic usando URL di base e chiave API, se necessaria. Prova la connessione. Il server locale deve essere in esecuzione; gli strumenti remoti possono trasmettere dati separatamente.
Progetto
Verifica sovrapposizione, contenimento e contatto, rifiutando area nulla o limiti invertiti prima dell’aritmetica e preservando gli ingressi.
Controlla prima di applicare
Confronta il comportamento effettivo con il risultato atteso. Se una verifica fallisce, indaga la causa prima di altre modifiche.
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) - overlapCollega il codice geometrico ai dati che riceve
RectDelta offre un ambiente di programmazione per Windows in cui discutere il codice geometrico come parte di un'applicazione, inclusi i confini di input del calcolo. Apri il progetto e descrivi da dove provengono le coordinate e a cosa serve il risultato. Chiedi all'assistente connesso di esaminare queste relazioni prima di proporre un'implementazione diversa dell'aritmetica.
Per un'attività sull'unione di rettangoli, specifica ordine delle coordinate, tipo numerico accettato e trattamento delle forme che si limitano a toccarsi. Porta rettangoli contenuti e sovrapposti come input di esempio, poi discuti come segnalare limiti non validi. Queste decisioni danno alla revisione un obiettivo concreto senza trasformare il calcolo illustrativo in un'affermazione sull'esistenza di un motore geometrico integrato.
Esamina insieme convalida e aritmetica ed esegui i controlli del progetto con forme ordinarie e rifiutate. Conferma che il chiamante riceva il risultato previsto e che gli input rimangano disponibili e invariati per il lavoro successivo. RectDelta si collega a servizi supportati compatibili con OpenAI o Anthropic, con credenziali quando necessarie. Puoi scegliere un modello senza restrizioni dove l'endpoint configurato lo offre; regole del fornitore e capacità del server continuano a governare la connessione. Mantieni gli esempi di accettazione nella conversazione, così ogni modifica suggerita può essere valutata rispetto allo stesso requisito applicativo.
Contratti geometrici prima delle modifiche implementative
Cosa devo specificare per l’input di un rettangolo?
Indica ordine delle coordinate, tipi numerici accettati e se entrambe le dimensioni debbano essere positive. Includi come devono fallire i contenitori malformati. L’assistente può così esaminare l’intero confine di input senza presumere che ogni input di quattro valori descriva una forma accettabile.
Perché includere rettangoli che si toccano nei casi di prova?
Distinguono i bordi condivisi dalla sovrapposizione con area positiva. Indica il risultato atteso dell’unione e provalo direttamente, insieme ai casi separati e contenuti, affinché la modifica rifletta la convenzione geometrica del resto dell’applicazione.
La convalida può cambiare durante una pulizia dell’aritmetica?
Può cambiare accidentalmente, per questo entrambe meritano una revisione. Confronta casi accettati e rifiutati prima di mantenere la modifica. Un calcolo più breve non deve ammettere silenziosamente limiti invertiti o tipi numerici esclusi dal contratto originale.
Come verifico che gli input siano preservati?
Conserva copie dei contenitori originali delle coordinate e confrontale dopo la chiamata. Se passaggi successivi dell’applicazione li riutilizzano, un’area corretta da sola non dimostra che l’implementazione proposta rispetti l’intero contratto.
RectDelta · Aggiornato 2026-10-25