BBezoutVale
Spațiu de programare cu AI

Coeficienți întregi Bézout

Returnează cmmdc nenegativ și coeficienții Bézout pentru doi întregi cu mai puțin de 101 cifre zecimale.

● ● ●BezoutVale●
Fluxuri de lucru · Coeficienți întregi Bézout ×
def bezout(a, b):
    if any(type(v) is not int or abs(v) >= 10**100 for v in (a, b)):
        raise ValueError("integer.range")
    old_r, r = abs(a), abs(b)
    old_s, s, old_t, t = 1, 0, 0, 1
    while r:
        q = old_r // r
        old_r, r = r, old_r - q * r
        old_s, s = s, old_s - q * s
        old_t, t = t, old_t - q * t
    return old_r, old_s * (-1 if a < 0 else 1), old_t * (-1 if b < 0 else 1)
✳Returnează cmmdc nenegativ și coeficienții Bézout pentru doi întregi cu mai puțin de 101 cifre zecimale.
✓ ModificăriVerifică înainte de aplicare ↗
Ilustrarea spațiului de lucru
01

Verifică înainte de aplicare

Compară comportamentul real cu rezultatul așteptat. Dacă o verificare eșuează, cercetează cauza înainte de alte modificări.

02

Modele

Configurează un endpoint compatibil OpenAI sau Anthropic cu URL-ul de bază și cheia API, dacă este necesară. Testează conexiunea. Serverul local trebuie să ruleze; instrumentele externe pot transmite date separat.

03

Proiect

Testează operanzi negativi și cazurile zero, verificând identitatea întreagă și respingând valori booleene.

Fluxuri de lucru

Coeficienți întregi Bézout

Fluxuri de lucru ↗
Fluxuri de lucru
def bezout(a, b):
    if any(type(v) is not int or abs(v) >= 10**100 for v in (a, b)):
        raise ValueError("integer.range")
    old_r, r = abs(a), abs(b)
    old_s, s, old_t, t = 1, 0, 0, 1
    while r:
        q = old_r // r
        old_r, r = r, old_r - q * r
        old_s, s = s, old_s - q * s
        old_t, t = t, old_t - q * t
    return old_r, old_s * (-1 if a < 0 else 1), old_t * (-1 if b < 0 else 1)
Spațiu de programare cu AI

Verifică contractul rezultatului la fel de atent ca calculul

BezoutVale este un program Windows pentru examinarea rutinelor auxiliare ale căror ieșiri trebuie să respecte un contract precis. Deschide proiectul și descrie ce așteaptă apelantul de la fiecare valoare returnată. Cere modelului să inspecteze interfața înainte de a propune o refactorizare, mai ales când mai multe rezultate pot părea plauzibile luate separat.

O sarcină bazată pe bezout.py se poate concentra pe intrările cu semn și coeficienții returnați împreună cu un divizor comun. Adu în conversație un caz cu intrare negativă și precizează identitatea pe care rezultatul trebuie să o respecte. Apoi verifică modul în care apelantul consumă tuplul, astfel încât reordonarea rezultatului sau schimbarea convenției de semn să nu treacă neobservată în spatele unei aritmetici aparent corecte.

Folosește verificări independente pentru evaluarea propunerii. Rulează testele proiectului și inspectează combinațiile cu intrări zero, variațiile de semn și respingerea operanzilor neacceptați. Păstrează dovezile legate de cerința inițială. Explicația unui model poate ghida analiza, dar aplicația necesită rezultate care satisfac atât relația matematică, cât și interfața apelată efectiv.

Alege modelul printr-un endpoint compatibil OpenAI sau Anthropic acceptat, furnizând date de autentificare când sunt necesare. Serviciul poate oferi un model IA fără cenzură, supus restricțiilor furnizorului. Instrumentele acceptate și capacitatea contextului depind de modelul și serverul selectate; limitează discuția despre sursă la ceea ce poate fi examinat fiabil în sesiune.

Întrebări pentru o interfață aritmetică cu mai multe valori

Două implementări corecte trebuie să returneze coeficienți identici?

Nu neapărat. Stabilește proprietățile necesare aplicației și dacă ea depinde de o reprezentare anume. O aserțiune de egalitate a întregului tuplu poate fi mai strictă decât contractul. Verifică apelantul înainte de a modifica rutina sau testele.

De ce să inspectez separat intrările negative?

Tratarea semnului poate păstra un divizor plauzibil, dar poate încălca relația care implică coeficienții. Furnizează cazuri cu semn și verifică independent relația definitorie. Examinează normalizarea la intrare, astfel încât valorile returnate să se refere în continuare la operanzii originali.

Ce trebuie să se întâmple când ambele intrări sunt zero?

Precizează rezultatul dorit sau politica de respingere și compar-o cu implementarea și apelanții actuali. Nu presupune că raționamentul pentru intrări pozitive rezolvă cazul zero. Include-l explicit în analiză pentru ca refactorizările ulterioare să păstreze contractul ales.

Pot cere o simplificare fără schimbarea convențiilor de returnare?

Da. Include în cerere ordinea actuală a tuplului, tipurile acceptate și regulile de semn, apoi cere o schimbare delimitată. Inspectează diferențele pentru validare modificată sau ieșiri reordonate și rulează verificări ale contractului înainte de a accepta simplificarea în proiect.

Descarcă pentru Windows ↗

BezoutVale · Actualizat 2026-10-25