feed twitter facebook LinkedIn facebook

Java » Factorial de un número

Noviembre 19, 2006 por Víctor Cuervo . 105438 visitas 176 Comentarios Imprimir Imprimir

El factorial de un número es la multiplicación de los número que van del 1 a dicho número. Para expresar el factorial se suele utilizar la notación n!. Así la definición es la siguiente:

n! = 1 x 2 x 3 x 4 x 5 x ... x (n-1) x n.

Siguiendo esta simple expresión podríamos codificarlo en Java de la siguiente forma.

Lo primero es definir la variable que va a definir el factorial y la que definirá el número sobre el que vamos a calcular el factorial.

double factorial = 1;
// El número elegido para el factorial es el 30
double numero=30;

Lo siguiente es hacer el bucle en el cual iremos decrementando el número y multiplicando por el valor del factorial.

while ( numero!=0) {
  factorial=factorial*numero;
  numero--;
}

Solo nos quedará el volcar el valor por pantalla:

System.out.println(factorial);

Esta es una forma muy sencilla de implementar el factorial. Si bien, tenemos otra forma de implementarlo. En este caso el factorial se define de una forma recursiva. Esta definición fue realizada por el matemático frances Christian Kramp.

La definición viene a decir lo siguiente:

si n=0
  entonces el factorial es 1
si n  > 1
  entonces (n-1)! x n

Esta implementación se puede definir con recursividad en la programación Java de la siguiente forma:

public int factorial (double numero) {
  if (numero==0)
    return 1;
  else
    return numero * factorial(numero-1);
}

Como podemos ver es un calco de la definición de Christian Kramp. En esta definición el método se irá llamando recursivamente hasta que se llegue a calcular el factorial del número 0.

Para volcar el dato por pantalla tendremos la siguiente línea de código:

System.out.println(factorial(40));
Descargar el Codigo
Descargar el código
Error en el Codigo
Error en el código
Foro sobre Java Básico
Foro sobre Java Básico
tags: , , , ,

Artículos relacionados:

176 comentarios »

Redifusión RSS de los comentarios de la entrada. TrackBack URI

1 2 3 4 5 18
  1. EDISON
    Noviembre 25, 2007 #

    hola que tal me mandaron hacer una tarea hecerca de el factorial de un numero pero en visual basic si me pueden ayudar con la lineas de codigo por fissss

  2. EDISON
    Noviembre 25, 2007 #

    nesecito el factorial de un numero en visual basic xfissss

  3. alexa
    Noviembre 27, 2007 #

    wenu quiero saber mas propiedades nu encuenro ni una pagina directa de todas las priedades haber si ponen px chao

  4. alexa
    Noviembre 27, 2007 #

    ponagn la s propiedades que nu enconuentro en ninguna apgina ps si ponen entro mas a su pagina ok

  5. MOSKA
    Diciembre 5, 2007 #

    QUISIERA HACER UN PROGRAMA DE FACTORIAL, ESTUDIO INFORMATICA
    Y QUISIERA SABER SI ME PODRIAS AYUDAR

  6. Manuel
    Diciembre 10, 2007 #

    Porque el factorial de un número distinto de 0 es igual a uno

  7. eduardo
    Diciembre 13, 2007 #

    cual es la definicion de n!!!

  8. NaOmi
    Diciembre 13, 2007 #

    Holax es que quisiera saber si me pueden explicar como sacar el factorial de un numero en eclipse, es que ya lo intente pero no m da plisss, necesito ayuda.
    graxx

  9. luismi
    Diciembre 14, 2007 #

    gracias por publicar este pagina me ha ayudado mucho en mi tarea pero quisera q me mandaran mas informacion a mi mail

  10. lineadecodigo
    Diciembre 15, 2007 #

    @luismi,

    Puedes mantenerte informado dándote de alta en la “Lista de Correo”. La encuentras en un enlace de la parte de arriba.

1 2 3 4 5 18

Deje un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*