Fonction récursive
Une fonction récursive est une fonction qui s’appelle elle-même pendant son exécution. Le processus peut se répéter plusieurs fois, en affichant le résultat et la fin de chaque itération.
La fonction Count() ci-dessous utilise la récursivité pour compter d’un nombre compris entre 1 et 9 jusqu’au nombre 10. Par exemple, Count(1) renverrait 2,3,4,5,6,7,8,9,10. Count(7) renverrait 8,9,10. Le résultat pourrait servir de moyen détourné de soustraire le nombre de 10.
function Count (integer N)
if (N <= 0) return "Must be a Positive Integer";
if (N > 9) return "Counting Completed";
else return Count (N+1);
end function
Les fonctions récursives permettent aux programmeurs d’écrire des programmes efficaces en utilisant une quantité minimale de code. Leur inconvénient est qu’elles peuvent provoquer des boucles infinies et d’autres résultats inattendus si elles ne sont pas écrites correctement. Par exemple, dans l’exemple ci-dessus, la fonction s’arrête si le nombre est inférieur ou égal à 0, ou supérieur à 9. Si les cas nécessaires ne sont pas inclus dans une fonction récursive pour arrêter l’exécution, celle-ci se répétera indéfiniment, ce qui fera planter le programme ou le rendra non réactif.
Testez vos connaissances