Hoy veremos dos formas de calcular el factorial en Java. La primera utiliza un ciclo while para obtener el factorial de un número, y la segunda utiliza recursividad o recursión.
Esas dos maneras para sacar el factorial las pondremos en unas funciones separadas que recibirán un dato de tipo long y devolverán igualmente un long.
Para calcular el factorial en Java se declara una variable que será el resultado; después se hace un ciclo en donde se va restando 1 al número del que se sacará el factorial y en cada iteración se multiplica el factorial por el número.
El ciclo se rompe cuando el número deja de ser mayor que 1. Lo mismo pasa en la recursividad.
En ambas funciones se comprueba si es menor o igual que cero y en caso de que sí, se devuelve 1. Esto viene por una ley matemática que no explicaré ahora, basta con saberlo.
Veamos el enfoque que usa un ciclo while. Como lo dije en el algoritmo, el ciclo se rompe cuando el número deje de ser mayor a 1. La función queda así:
Se hace el ciclo, algunas comprobaciones y al final se devuelve el factorial. Todo esto en una función que se puede llamar desde cualquier lugar.
Para sacar el factorial de un número en Java usando recursión (cuando la función se llama a sí misma) se llama a la función con el número que se recibe pero restándole 1. Es decir, se multiplica el actual por lo que regresa la función pero se le pasa el número -1.
La manera en la que se rompe la recursividad es cuando el número es menor o igual a 1, pues se regresa 1.
El código queda así:
Podemos implementar el siguiente código en el método main de Java:
Ese código va a imprimir el factorial del 0 al 19 usando un ciclo. De esta manera veremos si calculamos bien el factorial tanto de manera recursiva como de manera iterativa o con ciclos.
Prueba el código sin salir del navegador:
¿Quieres aprender más sobre Java? haz click aquí. También puedes ver más algoritmos.
La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…
Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…
El día de hoy te enseñaré algo muy sencillo pero útil al programar con PHP:…
El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…
En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…
Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…
Esta web usa cookies.