Les Allergies
Alimentaires
Posez votre question Signaler

Recursivité en java

kayzer59 19Messages postés 28 avril 2008Date d'inscription - Dernière réponse le 2 févr. 2009 à 03:16
Bonjour,
j'ai une methode sur la recursivité j'ai compris la moitié par contre la deuxieme moitié je ne vois pas coment on l'obtient
voici la methode :
public void recursive(int n){
System.out.println("début"+ n);
if (n > 1)
recursive(n - 1);
System.out.println("fin"+ n);
}
grace à cette methode je sais qu'on obtient le resultat suivant :
début3
début2
début1
fin1
fin2
fin3
explication de la partie comprise :
affichage debut 3 ensuite compare si 3 est plus grand que 1 comme c'est vrai la methode fonctionne come une boucle grace à la ligne recursive(n-1) et repart au debut en enlevant 1 a n donc on se base maintenant sur 2
affichage debut 2 mm procedure
affichage debut 1 ensuite compare 1 par rapport à 1 comme 1 n'est pas supereur à 1 alors il affiche e qui ne fait pas partie du if autrement dit il affiche fin 1
pour la suite je ne comprend pas comment il fait pour afficher fin 2 et fin 3
merci pour tte vos participations
Lire la suite 

Recursivité en java »

Suggestions
2 réponses
Réponse
+2
moins plus
Salut,

C'est vrai que la récursivité peut être difficile à s'imaginer ...

Pour les deux dernières lignes, tu peux te les représenter comme ça :
appel de : recursive(3)
print "début 3"
appel de : recursive(3-1)
    print "début 2"
    appel de : recursive(2-1)
        print "début 1"
        par d'appel.
        print "fin 1"
    print "fin 2"
print "fin 3"


Avant d'avoir le retour, tu dois finir avec une fonction ; c'est pour ça que t'as en première fin le 1, et en troisième le 3.

@Bientôt
programox- 2 févr. 2009 à 03:16
Merci grâce a toi j'ai réussi à comprendre
Ajouter un commentaire
Ce document intitulé « recursivité en java » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?