miércoles, 11 de febrero de 2009

FACTORIAL

Factorial!---->n !
Factorial (n)=n! si n>0
Factorial(n)=n*n-1*n-2*...... si n>0
Factorial(0)=1
Factorial(n)=1--->n=0
Factorial(n)=n*Factorial(n-1) si n>0

EJEMPLO
Factorial(5)=5*Factorial(4)=120
Factorial(4)=4*Factorial(3)=24

Factorial(3)=3*Factorial(2)=64
Factorial(2)=2*Factorial(1)=1
Factorial(1)=1*Factorial(0)=1

CODIGO FACTORIAL EN JAVA:


package factorial;//paquete de la clase

import javax.swing.JOptionPane;
//importar libreria JOptionPane

public class Factorial {
private int fact; // variable en la que se guarda el factorial escrito por el usuario
private int resp; // varible que contiene la respuesta

public Factorial(){ //constructor de la clase
fact=0; //inicializar variable fact
resp=1; //inicializar variable resp
hacerFact(); //ir al metodo factorial
}

public void hacerFact(){ // metodo en el que se hace la operacion
fact= Integer.parseInt(JOptionPane.showInputDialog("Digite el numero al que desea sacar factorial")); //aqui se pide el dato al usuario y se guarda
// la variable fac
if (fact==0) { //si el numero escrito por el usuario es 0 entonces:
resp=1; //respuesta es igual a 1 porque factorial de cero es 1
}
else { //sino
while (fact>=1) { //mientras que sea mayor o igual a uno haga
resp=resp*fact; //multiplicar la respuesta por la variable que reduce el factorial
fact=fact-1; //contador que reduce en uno el factorial
}
}
JOptionPane.showMessageDialog(null, "El factorial es "+resp);
//en esta line se da la respuesta despues de hacer toda la operacion
}
public static void main(String args[]) {
Factorial x= new Factorial(); //metodo main que corre el programa
}
}

No hay comentarios:

Publicar un comentario