En este programa, aprenderá a encontrar y mostrar el factorial de un número usando una función recursiva en Kotlin.
El factorial de un número positivo n viene dado por:
factorial de n (n!) = 1 * 2 * 3 * 4 *… * n
El factorial de un número negativo no existe. Y el factorial de 0 es 1.
Aprenderá a encontrar el factorial de un número usando la recursividad en este ejemplo. Visite esta página para aprender cómo puede encontrar el factorial de un número usando el bucle.
Ejemplo: factorial de un número mediante recursividad
fun main(args: Array) ( val num = 6 val factorial = multiplyNumbers(num) println("Factorial of $num = $factorial") ) fun multiplyNumbers(num: Int): Long ( if (num>= 1) return num * multiplyNumbers(num - 1) else return 1 )
Cuando ejecute el programa, la salida será:
Factorial de 6 = 720
Inicialmente, multiplyNumbers()
se llama a desde la main()
función con 6 pasado como argumento.
Dado que 6 es mayor o igual que 1, 6 se multiplica al resultado de multiplyNumbers()
donde se pasa 5 (núm -1). Dado que se llama desde la misma función, es una llamada recursiva.
En cada llamada recursiva, el valor del argumento num se reduce en 1 hasta que num llega a menos de 1.
Cuando el valor de num es menor que 1, no hay llamada recursiva.
Y cada llamada recursiva regresa dándonos:
6 * 5 * 4 * 3 * 2 * 1 * 1 (para 0) = 720
Aquí está el código Java equivalente: Programa Java para encontrar factorial usando recursividad