En informatique , un appel de méthode récursive est une méthode qui s'appelle elle-même au cours du processus de calcul. Le langage de programmation Java supporte la récursivité dans le cadre de sa syntaxe de programmation. Bien qu'il puisse être difficile pour les débutants programmeurs Java à saisir, écrit méthodes récursives permet souvent les concepts mathématiques pour être exprimées clairement dans le programme. Pour cette raison , il est important pour les programmeurs Java pour comprendre comment utiliser la récursivité et ses limites. Instructions
1
déterminer si le processus de calcul à effectuer se prête à la récursivité ou non. Il est important que le processus de calcul de la méthode peut être réduite à un appel répété à lui-même.
L'un des calculs de récursion populaires est le processus de détermination de la factorielle d'un nombre . A factorielle d'un nombre N est le résultat de la multiplication de tous les nombres de 1 à elle-même n. Par exemple, en utilisant la multiplication directe :
factorielle (3) = 3 * 2 * 1 = 6
Cependant, le même résultat est obtenu lorsque affichés de manière récursive :
factorielle ( 3) = 3 * factorielle ( 2) = 3 * 2 * factorielle ( 1) = 3 * 2 * 1 = 6
Notez que chaque étape successive se réfère à la même procédure, mais en termes plus simples .
Page 2
déclarer la méthode Java qui effectuer le calcul récursif . Une méthode a généralement au moins le modificateur , le type de retour , les noms de méthode et la liste de paramètres correspondant . Le nom de la méthode commence normalement par un mot verbal minuscules. Par exemple , la ligne suivante définit une méthode appelée «fait ()" qui accepte une valeur de nombre entier n et renvoie sa factorielle :
int fact ( int n) {}
< br > 3
veiller à ce que dans le corps de la méthode récursive , le calcul est effectué en faisant appel à elle-même. Assurez-vous qu'il ya une condition de terminaison de l'appel récursif ainsi , sinon la méthode s'exécute indéfiniment, sans s'arrêter . Par exemple , la ligne suivante calcule la factoria d'un nombre déterminé n en s'appelant successivement pour effectuer le même calcul avec une valeur simple de n-1.
Int fact ( int n) {
< p > int result ;
if ( n == 1) return 1;
résultat
= fact (n -1) * n;
return result
;
< p> }
Lorsque n -1 est égal à 1 , la valeur 1 est retournée. C'est la condition de terminaison du calcul récursif .
4
Appelez la méthode récursive pour le tester. Par exemple , la ligne suivante appelle le «fait ()" de la méthode en passant une valeur de 3 à imprimer sur la console:
System.out.println (" factorielle de 3 est " + f.fact ( 3) ) ;
Assurez-vous que le message « factorielle de 3 6 ' est imprimé sur l'écran
.