Está en la página 1de 1

Comparto mis aportaciones correspondientes a la semena 05

Se plantea en esta ocasi�n que se pueda definir solamente los dos conceptos
primordiales de esta unidad que es la de Recursividad y por otro lado la de
Iteraci�n.
Recursividad:

El paso de recursividad se ejecuta mientras la llamada original al m�todo sigue


estando activa (es decir, mientras no haya finalizado la ejecuci�n). El paso de
recursividad puede originar muchas m�s llamadas recursivas, a medida que el m�todo
divida cada nuevo sub problema en dos piezas conceptuales. Para que la recursividad
pueda terminar en un momento dado, cada vez que el m�todo se llama a s� mismo con
una versi�n un poco m�s simple del problema original, la secuencia de problemas
cada vez m�s peque�os debe convergir en el caso base.

Interacci�n:

Un programa que se invoca a s� mismo se repite un cierto n�mero de veces.

Por esta raz�n cualquier c�lculo recursivo puede ser expresado como una iteraci�n y
viceversa.

La elecci�n entre uno y otro m�todo vendr� dada por motivos de eficiencia y
legibilidad. � Un problema recursivo posee una soluci�n m�s legible si se resuelve
mediante un algoritmo recursivo.

Una soluci�n recursiva ocupa m�s memoria que una soluci�n iterativa.

Una vez que tus compa�eros participen menciona la principal diferencia que
encuentres.
Hasta el momento que estoy redactando esta tarea solo visualizo la aportaci�n de
los compa�eros Alan Antonio Flores Hern�ndez y Yamel Salas Loranca. No hay
diferencias marcadas

Coloca un ejemplo mencionando alguna de sus aplicaciones m�s comunes.


function factorial(n) {
n = parseInt(n); //Trato de obtener un entero
var signo = Math.sign(n); //Averiguo su signo
n = Math.abs(n); //Calculo el factorial sobre el valor absoluto (positivo)

if (n>=100)
throw "El n�mero es demasiado grande;";
//C�lculo del factorial
if (isNaN(n) || n<=0) return 1;
return signo*n* factorial(n-1); //Se devuelve el signo (solo en la primera
llamada habr� signo negativo)
15.}

También podría gustarte