[ Foro de Pseudocódigo ]

Funciones Recursivas

02-Dec-2013 13:59
Mauricio Hernandez
1 Respuestas

Bases para realizar programas con funciones recursivas en pseint.
Ejemplos utilizando dicha  funcion.


05-Dec-2013 09:45
Nacho Cabanes (+30)

Una función recursiva es la que se define a partir de ella misma, pero con datos cada vez más sencillos, hasta llegar a un caso base que resulte trivial.

Por ejemplo el factorial de 7 es

7 ! = 7 · 6 · 5 · 4 · 3 · 2 · 1

Y en general el factorial cualquier número es

n! = n · (n-1) · (n-2) · (n-3) · ... · 2 · 1

Si comparas con el factorial de 6, verás que se parece mucho al de 7:

6 ! = 6 · 5 · 4 · 3 · 2 · 1

De modo que podrías escribir el factorial de 7 a partir del factorial de 6:

7 ! = 7 · 6 !

Sólo falta pensar cual es el "caso base", la solución más sencilla posible para este problema. En el caso del factorial, se trata del factorial de 0, que tiene como valor 1:

0 ! = 1

Esa es la idea que hay que aplicar. Así, una función "Factorial" recursiva en PseInt podría ser así:

 
Proceso EjemploRecursividad1
	Escribir Factorial(5)	
FinProceso
 
 
Funcion valor <- Factorial(n)
	Si n = 0 Entonces
		valor <-1
	Sino
		valor <- n * Factorial(n-1)
	FinSi
FinFuncion	
 








(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)