Para calcular el factorial de un número podemos hacerlo mediante un bucle for o mediante recursividad. Pero, en los comentarios, nos habéis pedido cómo se puede poner el factorial de un número en texto. Es decir, que no solo indiquemos el valor del factorial, si no que mostremos el cálculo de las multiplicaciones. Todo ello mediante código Java.
Si recordamos, el factorial de un número es la multiplicación de todos los números desde el número del que queremos calcular el factorial hasta el número 1.
Es decir:
5! = 1 x 2 x 3 x 4 x 5 = 120
Y lo que buscamos es precisamente eso. Mostrar por pantalla la explicación del cálculo del factorial y su resultado.
Lo primero será definir dos variables, iNumero
para saber sobre qué número calculamos el factorial e iFactorial
que será la variable que contenga el valor del factorial.
// Numero del que queremos calcular el factorial int iNumero = 5; // Variable con el valor del factorial int iFactorial = 1;
Ahora vamos a definir otra variable en la que vamos a ir componiendo la cadena con el resultado.
String sCadena = Integer.toString(iNumero) + "! = 1";
Vamos a utilizar el objeto Integer
y el método .toString()
para poder convertir el valor del número del que queremos calcular el factorial en una cadena de tipo String
.
Lo siguiente será pasar a realizar el bucle en el que vamos calculando el factorial, multiplicando los valores hasta llegar al número.
for (int x=2;x<=iNumero;x++) { iFactorial = iFactorial * x; sCadena = sCadena + " x " + Integer.toString(x); }
Vemos que en cada iteración, la cadena se va incrementando con el valor del número por el que vamos calculando el factorial. Podemos comprobar que nos seguimos apoyando en la clase Integer
y el método .toString()
para la conversión a una cadena de tipo String
.
Ya solo nos quedará mostrar la cadena del cálculo del factorial, no sin olvidar el poner el resultado del factorial al final de la misma.
System.out.println(sCadena + " = " + Integer.toString(iFactorial));
De esta forma tan sencilla habremos conseguido mostrar por consola la cadena que representa el factorial de un número en texto. Espero que os sea de utilidad.