RRootEquinox
Pracovní prostředí s AI pro kód

Stabilní kořeny kvadratické rovnice

Spočítejte reálné kvadratické kořeny se škálovanými koeficienty a vzorcem omezujícím numerické odečítání.

● ● ●RootEquinox●
Pracovní postupy · Stabilní kořeny kvadratické rovnice ×
from math import isfinite, sqrt, copysign
def real_roots(a, b, c):
    original = (a, b, c)
    if not all(type(v) in (int, float) and isfinite(v) for v in original) or a == 0:
        raise ValueError("finite quadratic coefficients")
    if c == 0:
        other = -b / a
        if not isfinite(other) or (b != 0 and other == 0):
            raise ValueError("unrepresentable root")
        return [0.0] if b == 0 else sorted((0.0, other))
    scale = max(map(abs, original))
    a, b, c = (v / scale for v in original)
    if any(v != 0 and s == 0 for v, s in zip(original, (a,b,c))):
        raise ValueError("coefficient underflow")
    d = b*b - 4*a*c
    if d < 0: return []
    if d == 0: roots = [-b / (2*a)]
    else:
        q = -0.5 * (b + copysign(sqrt(d), b))
        if q == 0: raise ValueError("root underflow")
        roots = sorted((q/a, c/q))
    if not all(map(isfinite, roots)) or (original[2] != 0 and 0 in roots):
        raise ValueError("unrepresentable roots")
    return roots
✳Spočítejte reálné kvadratické kořeny se škálovanými koeficienty a vzorcem omezujícím numerické odečítání.
✓ ZměnyPřed použitím zkontrolujte ↗
Ilustrace pracovního prostředí
  1. Modely

    Nastavte endpoint kompatibilní s OpenAI nebo Anthropic pomocí základní URL a případného API klíče. Otestujte připojení. Lokální server modelu musí běžet; vzdálené nástroje mohou data odesílat samostatně.

  2. Projekt

    Ověřte dvojitý a vzdálené kořeny, odmítněte nulový vedoucí koeficient či nereprezentovatelné výsledky a při záporném diskriminantu vraťte žádné kořeny.

  3. Před použitím zkontrolujte

    Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu.

Pracovní postupy

Stabilní kořeny kvadratické rovnice

Pracovní postupy ↗
Pracovní postupy
from math import isfinite, sqrt, copysign
def real_roots(a, b, c):
    original = (a, b, c)
    if not all(type(v) in (int, float) and isfinite(v) for v in original) or a == 0:
        raise ValueError("finite quadratic coefficients")
    if c == 0:
        other = -b / a
        if not isfinite(other) or (b != 0 and other == 0):
            raise ValueError("unrepresentable root")
        return [0.0] if b == 0 else sorted((0.0, other))
    scale = max(map(abs, original))
    a, b, c = (v / scale for v in original)
    if any(v != 0 and s == 0 for v, s in zip(original, (a,b,c))):
        raise ValueError("coefficient underflow")
    d = b*b - 4*a*c
    if d < 0: return []
    if d == 0: roots = [-b / (2*a)]
    else:
        q = -0.5 * (b + copysign(sqrt(d), b))
        if q == 0: raise ValueError("root underflow")
        roots = sorted((q/a, c/q))
    if not all(map(isfinite, roots)) or (original[2] != 0 and 0 in roots):
        raise ValueError("unrepresentable roots")
    return roots
Pracovní prostředí s AI pro kód

Prověřte numerické chování i mimo běžný případ

RootEquinox je prostředí pro programování s AI ve Windows pro vývojáře, kteří potřebují zkoumat chování numerické implementace mimo pohodlné příklady. Začněte projektovými soubory a popište rozsah vstupů očekávaných aplikací. Požádejte připojený model o kontrolu výpočtu i reakce volajícího, když výsledek nelze reprezentovat zamýšleným způsobem.

Jedním konkrétním úkolem je rutina pro kořeny kvadratické rovnice. Koeficienty s velmi rozdílnými velikostmi mohou odhalit chování, které malý školní příklad mine, proto před žádostí o úpravu přineste do konverzace reprezentativní testovací případy. Proberte násobné kořeny, odmítané vedoucí koeficienty a způsob hlášení nepodporovaného výsledku. Tyto otázky propojují navrženou změnu vzorce s okolním smluveným chováním softwaru.

Prohlédněte výsledný zdrojový kód a spusťte projektové kontroly s původními testovacími případy, případně včetně kontrol reziduí. Nepovažujte věrohodně zobrazené číslo za dostatečný důkaz dodržení mezí implementace. RootEquinox pracuje s podporovanými koncovými body kompatibilními s OpenAI nebo Anthropic a podle potřeby používá přihlašovací údaje. Nabízí-li nastavená služba neomezený model, je jednou z možností, zatímco nástroje a limity kontextu závisí na serveru. Cílem je numerická změna posouditelná podle výslovných případů, s chováním při odmítnutí kontrolovaným stejně pečlivě jako úspěšný výstup.

Posuzování numerické úpravy

Co má doprovázet hlášení nepřesného výsledku?

Dodejte vstupní koeficienty, očekávané chování a dostatek podrobností k reprodukci nesrovnalosti. Zahrňte způsob použití výsledku volajícím. Asistent tak získá konkrétní softwarový problém místo pobídky k nahrazení vzorce bez důkazů.

Proč prověřovat cesty odmítnutí v numerickém kódu?

Volající potřebují definovanou reakci, když je vstup neplatný nebo užitečný výsledek nelze reprezentovat. Prověřte tyto cesty společně s výpočtem, aby úprava nenahradila jasné selhání zavádějícím výstupem nebo neočekávanou výjimkou.

Může kontrola rezidua prokázat přesnost každého kořene?

Přispívá důkazy o vrácených hodnotách, ale není univerzálním důkazem. Používejte ji s referenčními případy a kontrolami vstupních mezí a prověřte předpoklady tolerance místo přijetí jediného malého rezidua jako úplné validace.

Mám přijmout přepis, který projde běžnými příklady?

Až po kontrole obtížných případů, které úkol vyvolaly. V projektových testech zachovejte velmi rozdílná měřítka, násobné kořeny a stanovené neplatné vstupy. Před přijetím náhrady prověřte každou změnu chování při selhání.

Stáhnout pro Windows ↗

RootEquinox · Aktualizováno 2026-10-25