les pego aca el ejemplo de funciones recursivas que tengo en el manual, no lo logro terminar de entender, como puede ser qe dentro de una funcion llame a esa misma funcion si ni la termine de escribir?
Código HTML:
RECURSIVIDAD
El paradigma de la programación nos lleva a los desarrolladores a inventar
fórmulas que minimicen el esfuerzo en nuestros programas pecando,
106 Capítulo 5
algunas veces, de complejidad. Las funciones recursivas son aquellas capaces
de llamarse a sí mismas. Como único requisito es que haya una forma
de salir en la llamada recursiva. Si volvemos al ejemplo del número
factorial nos encontramos en que se puede escribir de la siguiente forma:
<?php
function factorial($numero)
{
if ($numero == 1) {
return $numero;
} else {
return $numero * factorial($numero-l);
}
}
echo "El factorial de 7 es ". factorial(7) ." <br>";
?>
Lo primero que llama la atención es que carece de un bucle f or para ir
disminuyendo los números implicados en el factorial. Lo que hace la función
es multiplicar el número que se pasa por el factorial del número-1. Si
el número que se pasa es igual a 1, la función deja de hacer llamadas recursivas
y comienza a devolver los valores hasta llegar al resultado final.
Alguien me lo puede explicar de una manera mas simple? con un ejemplo mas practico y entendible
muchas gracias