CConvergeHazel
KI-Arbeitsumgebung für Code

Näherungsbrüche aus Kettenbrüchen

Geben Sie alle Näherungsbrüche eines Kettenbruchs mit einem bis 32 ganzzahligen Koeffizienten mit Betrag bis 1000 aus.

● ● ●ConvergeHazel●
Arbeitsabläufe · Näherungsbrüche aus Kettenbrüchen ×
def convergents(terms):
    terms = tuple(terms)
    if not 1 <= len(terms) <= 32 or any(type(a) is not int or abs(a) > 1000 for a in terms):
        raise ValueError("fraction.terms")
    if any(a <= 0 for a in terms[1:]):
        raise ValueError("fraction.tail")
    p0, p1, q0, q1, out = 0, 1, 1, 0, []
    for a in terms:
        p, q = a*p1+p0, a*q1+q0
        out.append((p, q))
        p0, p1, q0, q1 = p1, p, q1, q
    return out
✳Geben Sie alle Näherungsbrüche eines Kettenbruchs mit einem bis 32 ganzzahligen Koeffizienten mit Betrag bis 1000 aus.
✓ ÄnderungenVor dem Anwenden prüfen ↗
Illustration der Arbeitsumgebung
  1. Projekt

    Testen Sie einen negativen Anfang und 3-7-16, lehnen Sie nicht positive Folgeterme ab und behalten Sie exakte Zähler-Nenner-Paare.

  2. Vor dem Anwenden prüfen

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

  3. 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.

Arbeitsabläufe

Näherungsbrüche aus Kettenbrüchen

Arbeitsabläufe ↗
Arbeitsabläufe
def convergents(terms):
    terms = tuple(terms)
    if not 1 <= len(terms) <= 32 or any(type(a) is not int or abs(a) > 1000 for a in terms):
        raise ValueError("fraction.terms")
    if any(a <= 0 for a in terms[1:]):
        raise ValueError("fraction.tail")
    p0, p1, q0, q1, out = 0, 1, 1, 0, []
    for a in terms:
        p, q = a*p1+p0, a*q1+q0
        out.append((p, q))
        p0, p1, q0, q1 = p1, p, q1, q
    return out
KI-Arbeitsumgebung für Code

Numerische Arbeit prüfen, ohne den Zweck der Anwendung zu verlieren

ConvergeHazel ist eine KI-Programmierumgebung für Windows, um numerische Quellcodeänderungen im Zusammenhang mit dem Projekt zu besprechen, das sie benötigt. Öffnen Sie den Ordner und erklären Sie, wie die Anwendung die Berechnung verwendet. Lassen Sie das verbundene Modell Funktion, Aufrufer und relevante Tests untersuchen, bevor es eine Änderung empfiehlt. Dieser Kontext hilft, eine mathematisch plausible Neufassung am tatsächlichen Softwarevertrag auszurichten.

Das Beispiel convergents.py kann eine Aufgabe zu einer Folge rationaler Näherungen konkretisieren. Geben Sie eine kurze Eingabe und die exakt erwarteten Zähler-Nenner-Paare vor und fragen Sie, wie Zwischenergebnisse zum Verbraucher gelangen. Behandeln Sie zulässige Grenzen der Terme und Ausgabereihenfolge als ausdrückliche Anforderungen. Das Beispiel liefert ein konkretes Prüfziel; Implementierung und Verifikation bleiben Aufgaben an Ihren eigenen Projektdateien.

Ein ungefiltertes KI-Modell lässt sich über einen unterstützten OpenAI-kompatiblen oder Anthropic-Endpunkt wählen, der es anbietet. Konfigurieren Sie Verbindung und Zugangsdaten nach Bedarf; Kontextkapazität und Werkzeugverfügbarkeit unterscheiden sich je nach Dienst. Prüfen Sie Änderungsvorschläge und vergleichen Sie Ergebnisse mit unabhängig ermittelten Fällen. Halten Sie Anforderungen an exakte Arithmetik sichtbar, wenn späterer Code die Ausgabe in Dezimalzahlen umwandelt. Ein Patch lässt sich leichter bewerten, wenn jede Umwandlung einen erklärten Zweck und eine Prüfung an der Grenze hat, an der sich ihre Bedeutung ändern könnte.

Einen numerischen Patch überprüfbar machen

Warum exakte Paare statt Dezimalbeispiele angeben?

Dezimalzahlen können Unterschiede in Darstellung oder Rundung verbergen. Wenn der Funktionsvertrag Zähler-Nenner-Paare zurückgibt, prüfen Sie zuerst diese direkt. Bewerten Sie anschließende Dezimalumwandlungen als eigenen Schritt mit eigenen Genauigkeitsanforderungen.

Kann das Modell entscheiden, welche Eingabegrenzen entfernt werden?

Es kann Gründe vorschlagen, doch die Projektanforderungen sollten die zulässigen Eingaben bestimmen. Untersuchen Sie Validierung und Aufrufer, bevor Sie den Bereich erweitern. Größere Werte oder längere Folgen können zusätzliche Ressourcen- und Ausgabeprüfungen erfordern, die die ursprüngliche Aufgabe nicht umfasste.

Sollte ich nur die letzte Näherung prüfen?

Nicht, wenn Aufrufer die Zwischenfolge verwenden. Nehmen Sie die erwartete Reihenfolge und repräsentative frühere Ergebnisse ebenso wie das letzte Paar auf. Eine Funktion kann einen plausiblen Endwert erreichen und dennoch falsche oder umsortierte Zwischeneinträge zurückgeben.

Was tun, wenn numerische Erklärung und Tests widersprechen?

Setzen Sie die Patch-Entscheidung aus und verfolgen Sie einen kleinen Fall durch den Quellcode. Prüfen Sie den Erwartungswert unabhängig und untersuchen Sie die Testannahmen. Weder flüssige Argumentation noch eine vorhandene Zusicherung sollte ohne Untersuchung einen nachgewiesenen Widerspruch übergehen.

Für Windows herunterladen ↗

ConvergeHazel · Aktualisiert 2026-10-25