Itératif vers récursive
boubou1987
-
boubou1987 -
boubou1987 -
Bonjour,
la récursivité pour moi est la bête noir
svp y a t il des astuces pour passer d'une version itérative vers une version récursive????
merci d'avance
la récursivité pour moi est la bête noir
svp y a t il des astuces pour passer d'une version itérative vers une version récursive????
merci d'avance
A voir également:
- Itératif vers récursive
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Clavier qwerty vers azerty - Guide
- Vers quelle adresse web renvoie ce lien - Guide
- Envoyer vers - Guide
- Minuscule vers majuscule - Guide
2 réponses
--
Je crois qu'il n'y ai aucune astuce.
Owersystem,membre de Commentçamarche.net.
Facebook : Douglas Owersym.
Je crois qu'il n'y ai aucune astuce.
Owersystem,membre de Commentçamarche.net.
Facebook : Douglas Owersym.
boubou1987
alors comment faire pour résoudre mon problème?????
On peut toujours passer d'une fonction itérative à une fonction récursive.
Remarque : l'inverse est faux, il existe des algorithmes récursifs qui ne peuvent pas être traités avec des boucles...
Quels sont les langages que tu connais ? Que je te donnes des exemples que tu puisses comprendre ;-)
Remarque : l'inverse est faux, il existe des algorithmes récursifs qui ne peuvent pas être traités avec des boucles...
Quels sont les langages que tu connais ? Que je te donnes des exemples que tu puisses comprendre ;-)
Ici j'ai fait une simple incrémentation alors que la boucle for permet de faire bien plus.
Ce n'est pas magique, il faut réfléchir un peu mais le principe est le même à chaque fois.
Remarque : l'intérêt d'utiliser la récursivité est souvent limité lorsqu'on peut faire la même chose aussi simplement de manière itérative. En effet il vaut parfois mieux utiliser une variable à incrémenter que de charger bêtement la pile qui est limitée en taille...
Ce n'est pas magique, il faut réfléchir un peu mais le principe est le même à chaque fois.
Remarque : l'intérêt d'utiliser la récursivité est souvent limité lorsqu'on peut faire la même chose aussi simplement de manière itérative. En effet il vaut parfois mieux utiliser une variable à incrémenter que de charger bêtement la pile qui est limitée en taille...
#include <stdio.h> void f(int i) { printf("%d\n",i); } void iteratif(int n) { int i; for (i=0; // initialisation i<n; // condition d'arrêt i++) // incrémentation { f(i); // calcul } } void recursif(int n,int i=0) // initialisation { if (i<n) // condition d'arrêt { f(i); // calcul recursif(n,i+1); // incrémentation } } int main() { iteratif(5); recursif(5); return 0; }