RRootEquinox
KI-Arbeitsumgebung für Code

Stabile quadratische Nullstellen

Berechne reelle quadratische Nullstellen mit skalierten Koeffizienten und einer auslöschungsarmen Formel.

● ● ●RootEquinox●
Arbeitsabläufe · Stabile quadratische Nullstellen ×
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
✳Berechne reelle quadratische Nullstellen mit skalierten Koeffizienten und einer auslöschungsarmen Formel.
✓ ÄnderungenVor dem Anwenden prüfen ↗
Illustration der Arbeitsumgebung
  1. Modelle

    Richten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.

  2. Projekt

    Prüfe eine doppelte und weit auseinanderliegende Nullstellen, lehne einen führenden Nullkoeffizienten oder nicht darstellbare Ergebnisse ab und liefere bei negativer Diskriminante keine Wurzeln.

  3. Vor dem Anwenden prüfen

    Vergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.

Arbeitsabläufe

Stabile quadratische Nullstellen

Arbeitsabläufe ↗
Arbeitsabläufe
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
KI-Arbeitsumgebung für Code

Numerisches Verhalten jenseits des gewöhnlichen Falls prüfen

RootEquinox ist eine KI-Programmierumgebung für Windows für Entwickler, die das Verhalten einer numerischen Implementierung außerhalb bequemer Beispiele untersuchen müssen. Beginnen Sie mit Ihren Projektdateien und beschreiben Sie den erwarteten Eingabebereich. Lassen Sie das verbundene Modell sowohl die Berechnung als auch die Reaktion des Aufrufers prüfen, wenn ein Ergebnis nicht wie vorgesehen darstellbar ist.

Eine Routine für quadratische Nullstellen bietet eine konkrete Aufgabe. Stark unterschiedlich große Koeffizienten können Verhalten aufdecken, das ein kleines Unterrichtsbeispiel übersieht; bringen Sie daher vor einer Änderungsanfrage repräsentative Testfälle ins Gespräch ein. Besprechen Sie doppelte Nullstellen, abgewiesene führende Koeffizienten und die Meldung nicht unterstützter Ergebnisse. Diese Fragen verbinden eine Formeländerung mit dem umgebenden Softwarevertrag.

Prüfen Sie den resultierenden Quelltext und führen Sie Projektprüfungen mit den ursprünglichen Testfällen aus, gegebenenfalls einschließlich Residuenprüfungen. Betrachten Sie eine plausibel angezeigte Zahl nicht als ausreichenden Beleg für die Einhaltung der Grenzen. RootEquinox arbeitet mit unterstützten OpenAI-kompatiblen oder Anthropic-Endpunkten, bei Bedarf mit Zugangsdaten. Ein uneingeschränktes Modell ist eine Option, wenn der konfigurierte Dienst eines bereitstellt, während Werkzeuge und Kontextgrenzen vom Server abhängen. Ziel ist eine anhand ausdrücklicher Fälle bewertbare numerische Änderung, deren Ablehnungsverhalten ebenso sorgfältig geprüft wird wie erfolgreiche Ausgaben.

Einen numerischen Patch beurteilen

Was sollte einer Meldung eines ungenauen Ergebnisses beiliegen?

Liefern Sie Eingabekoeffizienten, erwartetes Verhalten und genügend Details zur Reproduktion der Abweichung. Beschreiben Sie auch, wie der Aufrufer das Ergebnis verwendet. So erhält der Assistent ein konkretes Softwareproblem statt einer Einladung, die Formel ohne Belege zu ersetzen.

Warum Ablehnungspfade in numerischem Code prüfen?

Aufrufer benötigen eine definierte Reaktion, wenn Eingaben ungültig oder nützliche Ergebnisse nicht darstellbar sind. Prüfen Sie diese Pfade zusammen mit der Berechnung, damit ein Patch einen klaren Fehler nicht durch irreführende Ausgaben oder unerwartete Ausnahmen ersetzt.

Kann eine Residuenprüfung die Genauigkeit jeder Nullstelle beweisen?

Sie liefert Hinweise zu den zurückgegebenen Werten, ist aber kein allgemeingültiger Beweis. Nutzen Sie sie zusammen mit Referenzfällen und Eingabegrenzprüfungen und prüfen Sie die Toleranzannahmen, statt ein einzelnes kleines Residuum als vollständige Validierung anzusehen.

Soll ich eine Neufassung akzeptieren, die gewöhnliche Beispiele besteht?

Erst nach Prüfung der schwierigen Fälle, die die Aufgabe ausgelöst haben. Bewahren Sie stark unterschiedliche Größenordnungen, doppelte Nullstellen und festgelegte ungültige Eingaben in den Projekttests. Prüfen Sie jedes geänderte Fehlerverhalten vor der Übernahme des Ersatzes.

Für Windows herunterladen ↗

RootEquinox · Aktualisiert 2026-10-25