LMRG En La Red

LMRG En La Red

jueves, 3 de septiembre de 2015

Calcular el factorial de un entero en java netbeans recursivo

En esta ocasión vamos a programar 3 clases para calcular el factorial de un entero usando métodos y el método recursivo para su proceso en este caso estamos haciendo referencia a programación estructurada.

La clase principal se llama Prueba en la cual se hace el llamado al método de la clase proceso donde se le pide al usuario que inserte el entero para calcular el factorial.

//Clase Principal
public class Prueba {
public static void main(String[] args) {
proceso PC = new proceso();
PC.dato();
}
}


En la clase proceso realizamos la validacion de los datos si el usuario introduce texto retornamos un mensaje donde le decimos que "No se aceptan letras"

//Clase proceso
import java.util.Scanner;
public class proceso{
public void dato (){
Scanner sc = new Scanner(System.in);
int entero;
String numero;
Double a;

try{
System.out.println("Inserta un entero");
numero = sc.next();
entero=Integer.parseInt(numero);
a = sc.nextDouble();
       
Factorial F = new Factorial();
F.Factorial(entero);
       
System.out.println("El Factorial De "+entero+" es:" + F.Factorial(entero));
}
catch(NumberFormatException e){
System.out.println("No se aceptan letras");
proceso PC = new proceso();
PC.dato();
}
}
}

En la clase factorial es donde hacemos todo el cálculo del factorial y regresamos mediante el método recursivo el método el cual envía los datos obtenidos a la clase proceso y al mismo tiempo ese resultado se procesa hasta la clase principal donde finalmente se imprime en pantalla al usuario.

//Clase factorial
public class Factorial{
private int n;
public int Factorial (int n){
int num;
this .n = n;  
if(n == 0){ 
num = 1;
}
else{
num=n * Factorial (n-1);
}
return num;
}
private Double a;{
int num;
this.a = a;
}
}

No hay comentarios:

Publicar un comentario