|
|
|
|
Langage C / Fonction récursive
Dernière réponse le 31 mar 2008 à 21:43:37 human, le 14 déc 2002 à 00:07:47Bonjour à tous,
J'ai un petit ennui avec une fonction récursive. Celle-ci fait appel à elle même un certain nombre de fois et doit s'arrêter lorsque certaines conditions sont vérifiées. Et pour arrêter l'exécution d'une fonction, je ne connais que 2 méthodes : return et exit(0)
L'ennui c'est que dans ces deux cas mon programme s'arrête (avec retour du prompt sous le shell quand j'utilise exit(0)) mais il n'exécute pas ce qu'il doit exécuter après cette fonction !!
Vous avez une autre méthode pour arrêter l'exécution d'une fonction (récursive) et poursuivre les différentes procédures du main ??
Merci de vos réponses
Human,
|
G un petit exercice et svp si vous pouvez me donner la reponse
|
#include <stdio.h>
|
Oui en fait dans fact2(nbr) on appelle encore la fonction fact2(nbr - 1) pour faire le meme traitement avec (nbr - 1) ainsi de suite mais il doit y avoir une condition d arret a l appel de cette fonction sinon ce serait infinie alors.Donc toute fonction recursive a besoin d une condition d arret.Et dans fact2 la condition d arret c est lorsque nbr == 1.
|

