Java » Factorial de un número
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 (x==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 código | ![]() Error en el código | ![]() Foro sobre Java Básico |
Artículos relacionados:









Marzo 24, 2007 #
quisiera saber
cuanto es n!+(n+1)!+(n+2)! porfa que no encuentro la respuesta en ninguna pagina… y no entiendo cuando se suman
Junio 7, 2007 #
n.(n-1)!+(n+1)n!+(n+2)(n+1)n!
me parece q es asi
Junio 12, 2007 #
hola como esta usted
me interesa saber mas a cerca de este tema ya que estudio en un colegio de estudios cientificos y tecnologicos (preparatoria)
y llevo la carrera de informatica, en este momento cirso el cuarto semestre, estoy en dias de salir de la escuela, y llevo lo que es c++
que la verdad no le entiendo a nada, por que la profesora que lo imparte es muy dejada, y quisiera que me enseñara lo que usted sabe, gracias
Agosto 17, 2007 #
quisiera saber como se calcula las notas de n estudiantes,con n consolidados,con n notas y saber el promedio de ellos
Agosto 23, 2007 #
quiciera saber las propiedades que pueden cumplir !
po ejemplo 10!/5!
Agosto 24, 2007 #
quisiera conseguir materialde estudio ahcerca de factorial
Agosto 27, 2007 #
MARCELA RODRIGUEZ AGOSTO 27, 2007
quiciera hacer un programa que muestre las tablas de multiplicar del 1 al 10
gracias.
Agosto 27, 2007 #
Hola Marcela,
Tienes el ejemplo en Tablas de multiplicar en Java. Espero que te sea de ayuda….
Agosto 29, 2007 #
MARCELA RODRIGUEZ.
quiciera hacer un programa que muestre las tablas de multiplicar de 1 al 10 en lenguaje de programacion de delphi ESPERO QUE ME PUEDAS AYUDAR
Septiembre 6, 2007 #
m gustaria saber si la programacion en macromedia dreamweaver kla programacion es lo mismo o no y si no lo es m gustaria q m dn el cod …..