¿Recursividad?
Es
una técnica que existe para resolver problemas a través de llamadas al mismo
problema.
Nota: con la recursividad puede sustituir a los ciclos pero no son muy
eficientes.
- Practica 2.- calcular el factorial de un numero
- Diagramas UML
2.- Aquí comienza la clase Factorial:
public class Factorial
{
private int numero;
private int fat;
public int getNumero() {
return numero;
}
public void setNumero(int numero) {
this.numero = numero;
}
public int getFat() {
return fat;
}
public void setFat(int fat) {
this.fat = fat;
}
public void captura ()
{
numero=Integer.parseInt(JOptionPane.showInputDialog("Numero: "));
}
public int calcularFactorial(int n)
{
if(n==1 || n==0)
{
return 1;
}
else
{
fat= n*calcularFactorial(n-1);
return fat;
}
}
public void imprimirFactorial()
{
JOptionPane.showMessageDialog(null,"El Factorial es: " +fat);
}
}
3.- Aquí comienza la clase solución:
public class Solucion_factorial
{
public static void main(String []arg)
{
Factorial n;
n=new Factorial();
int numVeces;
numVeces=Integer.parseInt(JOptionPane.showInputDialog("Factorial a calcular"));
for(int i=1; i<numVeces; i++)
{
//n.captura();
n.calcularFactorial(i);
n.imprimirFactorial();
}
}
La
recursividad es una técnica muy útil en el ámbito de los lenguajes de programación
orientada a objetos ya que tiene sus
ventajas y desventajas ya que puede sustituir a los ciclos pero pues al mismo
tiempo pueden ser no muy eficientes.
Publicado por: Dickner Steven Barrios & Yenifer Mina Castillo
Publicado por: Dickner Steven Barrios & Yenifer Mina Castillo
No hay comentarios:
Publicar un comentario