În acest program, veți învăța să găsiți și să afișați factorialul unui număr folosind o funcție recursivă în Kotlin.
Factorialul unui număr pozitiv n este dat de:
factorial de n (n!) = 1 * 2 * 3 * 4 * … * n
Factorialul unui număr negativ nu există. Și factorialul 0 este 1.
În acest exemplu, veți învăța să găsiți factorialul unui număr folosind recursivitatea. Accesați această pagină pentru a afla cum puteți găsi factorialul unui număr folosind bucla.
Exemplu: Factorialul unui număr folosind recursivitate
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 )
Când rulați programul, ieșirea va fi:
Factorial de 6 = 720
Inițial, multiplyNumbers()
se apelează din main()
funcția cu 6 trecut ca argument.
Deoarece 6 este mai mare sau egal cu 1, 6 se înmulțește cu rezultatul de multiplyNumbers()
unde este trecut 5 (num -1). Deoarece, este apelat din aceeași funcție, este un apel recursiv.
În fiecare apel recursiv, valoarea argumentului num este scăzută cu 1 până când num ajunge la mai puțin de 1.
Când valoarea num este mai mică de 1, nu există apel recursiv.
Și fiecare apel recursiv revine oferindu-ne:
6 * 5 * 4 * 3 * 2 * 1 * 1 (pentru 0) = 720
Iată codul Java echivalent: Programul Java pentru a găsi factorial folosind recursivitatea