CConvergeHazel
Espace de développement avec IA

Réduites de fractions continues

Renvoyez chaque réduite d’une fraction continue de un à 32 coefficients entiers de valeur absolue au plus 1000.

● ● ●ConvergeHazel●
Méthodes de travail · Réduites de fractions continues ×
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
✳Renvoyez chaque réduite d’une fraction continue de un à 32 coefficients entiers de valeur absolue au plus 1000.
✓ ModificationsVérifiez avant d’appliquer ↗
Illustration de l’espace de travail
  1. Projet

    Testez un premier terme négatif et 3-7-16, rejetez les termes suivants non positifs et gardez des couples numérateur-dénominateur exacts.

  2. Vérifiez avant d’appliquer

    Comparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.

  3. Modèles

    Configurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.

Méthodes de travail

Réduites de fractions continues

Méthodes de travail ↗
Méthodes de travail
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
Espace de développement avec IA

Examinez les calculs numériques sans perdre de vue le rôle de l’application

ConvergeHazel est un espace de programmation avec IA pour Windows permettant de discuter de modifications du code numérique avec le projet qui en a besoin. Ouvrez le dossier et expliquez comment l’application utilise le calcul. Demandez au modèle connecté d’examiner la fonction, ses appelants et les tests pertinents avant de recommander une modification. Ce contexte aide à maintenir une réécriture mathématiquement plausible en accord avec le contrat réel du logiciel.

L’exemple convergents.py peut servir de base à une tâche sur une suite d’approximations rationnelles. Fournissez une entrée courte et les couples numérateur-dénominateur exacts attendus, puis demandez comment les résultats intermédiaires parviennent au consommateur. Traitez les bornes des termes acceptés et l’ordre des sorties comme des exigences explicites. L’exemple fournit une cible concrète d’examen, tandis que l’implémentation et la vérification restent des tâches effectuées sur vos propres fichiers de projet.

Un modèle d’IA sans filtrage peut être choisi via un point de terminaison compatible OpenAI ou Anthropic pris en charge qui en propose un. Configurez la connexion et les identifiants selon les besoins ; la capacité de contexte et les outils disponibles varient selon le service. Examinez les modifications proposées et comparez les résultats à des cas établis indépendamment. Gardez les exigences d’arithmétique exacte visibles si du code ultérieur convertit la sortie en décimal. Un correctif est plus facile à évaluer lorsque chaque transformation a un objectif défini et une vérification à la frontière où le sens pourrait changer.

Rendre un correctif numérique vérifiable

Pourquoi fournir des couples exacts plutôt que des exemples décimaux ?

Les décimales peuvent masquer une différence de représentation ou d’arrondi. Si le contrat de la fonction renvoie des couples numérateur-dénominateur, vérifiez-les directement d’abord. Évaluez ensuite toute conversion décimale ultérieure comme une étape distincte avec ses propres exigences de précision.

Le modèle peut-il décider quelles bornes d’entrée supprimer ?

Il peut proposer des raisons, mais les exigences du projet doivent déterminer les entrées acceptées. Examinez la validation et les appelants avant d’élargir la plage. Des valeurs plus grandes ou des suites plus longues peuvent nécessiter des contrôles de ressources et de sortie absents de la tâche initiale.

Faut-il vérifier uniquement la dernière approximation ?

Pas si les appelants utilisent la suite intermédiaire. Incluez l’ordre attendu et des résultats antérieurs représentatifs ainsi que le dernier couple. Une fonction peut atteindre une valeur finale plausible tout en renvoyant des éléments intermédiaires incorrects ou réordonnés.

Que faire si l’explication numérique et les tests divergent ?

Suspendez la décision sur le correctif et suivez un petit cas dans le code source. Vérifiez indépendamment la valeur attendue et examinez les hypothèses du test. Ni un raisonnement fluide ni une assertion existante ne doivent prévaloir sur un écart démontré sans investigation.

Télécharger pour Windows ↗

ConvergeHazel · Mis à jour 2026-10-25