No encontrado

El concepto de recursividad

Daniel Cocotle

Es una alternativa al uso de los ciclos, ya que la recursividad ocupa toda una función para que se puedan desarrollar los comandos a repetir, a diferencia de los iteradores if-else que sólo ocupan un bloque de programación. El propósito de la recursividad es para que algún problema se pueda resolver usando la misma función, pero usando cada vez parámetros que se aproximen al resultado deseado, una vez que se haya obtenido el resultado deseado la función recursiva ya no se repetirá. Por poner un ejemplo, aquí se muestra un programa para poder sacar la factorial de un número usando recursividad.

Como podemos ver, la función llamada “factorial” es de tipo entero y tiene un paso de parámetros por una variable de tipo entero llamada “num”. Si la variable “num” vale 0 la función termina, pero si la variable tiene un valor diferente a 0, esta multiplicará el valor que tenga en ese momento con el resultado de factorial(num-1), por lo que la función “factorial” se invocará a sí misma pero con un número con una unidad inferior.

La función se llamará recursivamente hasta que la variable “num” quede en 0 y pueda terminar, después de eso se puede realizar la multiplicación o mejor dicho, todas las multiplicaciones que quedaron pendientes.