IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scheme Discussion :

Récursivité terminale


Sujet :

Scheme

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 73
    Points : 44
    Points
    44
    Par défaut Récursivité terminale
    Bonjour,
    je voudrais savoir si qq peux m'aidez a repondre su ces questions :
    -Qu'appelle-t-on récursivité trminale?
    -donner une forme récursive non terminale (total-rec l ) et une formae récursive terminale (total-it l) pour la fonction qui additionne une liste de valeurs numériques.
    -Donnez la trace des appels (total-rec l) et (total-it l) avec l =(4 1 3).
    -a la fin quelle est l'intérêt d'une récursivité terminale?

    Je vous remercie en avance

    @++

  2. #2
    LLB
    LLB est déconnecté
    Membre expérimenté
    Inscrit en
    Mars 2002
    Messages
    968
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 968
    Points : 1 412
    Points
    1 412
    Par défaut
    Un appel de fonction est terminal lorsqu'il correspond exactement au retour de la fonction. C'est-à-dire que c'est la dernière chose que la fonction effectue. Du coup, il n'y a pas besoin de revenir à l'endroit de l'appel, après avoir exécuté la fonction. Par conséquent, on peut remplacer l'appel de fonction par un saut et éviter d'utiliser la pile... Mais tu aurais eu la réponse plus rapidement si tu avais cherché sur un moteur de recherche (si quelque chose n'était pas clair, tu aurais pu demander des explications supplémentaires).

    Note en passant : un appel terminal n'est pas forcément récursif (même si c'est dans ce cas que c'est le plus intéressant).

    Pour rendre terminal un appel de fonction qui ne l'est pas, il suffit en général d'ajouter un argument à la fonction et de réfléchir. Ce que je te laisse faire.

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    C'est des questions de cours -_-

    LLB t'a bien aidé pour la 1)... si tu avais pris le temps de faire une recherche sur ce forum tu aurais trouvé d'autres réponses.

    Pour la 2) et la 3), si tu as des difficultés et que tu montres où tu en es... et si on peut voir que tu as travaillé tu auras de l'aide. Sans compter que je suspecte que ton prof veut l'utilisation d'un outil en particulier.

    Pour la 4) c'est une question qui te demande une réflexion personnelle et qui doit montrer tes capacités d'analyses.

    Tu peux toujours proposer ta solution et on verra à te donner de l'aide à partir de là.

Discussions similaires

  1. Question récursivité terminale sur JVM
    Par Seb_de_lille dans le forum Scala
    Réponses: 4
    Dernier message: 26/06/2010, 04h52
  2. Récursivité terminale optimisée
    Par zesister dans le forum Scheme
    Réponses: 1
    Dernier message: 02/05/2008, 02h16
  3. Récursivité terminale(algorithme simple)
    Par miltone dans le forum Débuter
    Réponses: 18
    Dernier message: 20/02/2008, 01h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo