viernes, 13 de noviembre de 2020

Recursividad en Java - Calculando el Factorial de un Número

Hola a todos, hoy vamos a calcular el factorial de un número implementando recursividad en una clase que vamos a construir en Java. 

La recursividad es la propiedad que tienen los métodos en Java de invocarse a si mismos.

Recuerden que el factorial de un número, es el producto de la serie de números que va desde 1 hasta el número. Ejemplo: El factorial de 5, que se escribe: 5! es igual a: 5 x 4 x 3 x 2 x 1 = 120.

Adicional a la construcción de la clase que implementa recursividad, vamos a resolver el problema también utilizando una clase con un método basado en iteraciones.


Veamos entonces estas dos clases y su implementación:



A continuación el código fuente:
package recursividad;
public class FactorialRecursivo {
//Método recursivo para calcular el factorial de un número
public long calcularFactorial(long fac) {
if(fac <= 1) {
return 1;
}
else {
return fac * calcularFactorial(fac - 1);
}
}
}
package recursividad;
public class FactorialIterativo {
//Método iterativo para calcular el factorial de un número
public long calcularFactorial(long fac) {
long factorial = 1;
while(fac >= 1){
factorial *= fac;
fac--;
}
return factorial;
}
}
package recursividad;
public class FactorialTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
long i = 10;
FactorialRecursivo factorialRec = new FactorialRecursivo();
FactorialIterativo factorialIte = new FactorialIterativo();
System.out.println("Método Recursivo -> El factorial de " + i +
" es: " + factorialRec.calcularFactorial(i));
System.out.println("-------------------------------------------");
System.out.println("Método Iterativo -> El factorial de " + i +
" es: " + factorialIte.calcularFactorial(i));
}
}

No hay comentarios.:

Publicar un comentario