V tem programu se boste naučili iskati in prikazovati faktorje številke z uporabo rekurzivne funkcije v Kotlinu.
Faktorial pozitivnega števila n je podan z:
faktorijel od n (n!) = 1 * 2 * 3 * 4 * … * n
Faktor negativnega števila ne obstaja. In faktorijel 0 je 1.
V tem primeru se boste naučili iskati faktorje številke z uporabo rekurzije. Obiščite to stran, če želite izvedeti, kako lahko z zanko najdete faktorje številke.
Primer: Faktor s številom, ki uporablja rekurzijo
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 )
Ko zaženete program, bo rezultat:
Faktorijev od 6 = 720
Sprva multiplyNumbers()
se main()
funkcija pokliče iz funkcije s 6, ki je bila podana kot argument.
Ker je 6 večje ali enako 1, se 6 pomnoži z rezultatom, multiplyNumbers()
kjer je 5 (število -1). Ker je poklican iz iste funkcije, je rekurzivni klic.
V vsakem rekurzivnem klicu se vrednost argumenta num zmanjša za 1, dokler num ne doseže manj kot 1.
Ko je vrednost num manjša od 1, ni rekurzivnega klica.
In vsak rekurzivni klic se vrne in nam da:
6 * 5 * 4 * 3 * 2 * 1 * 1 (za 0) = 720
Tu je enakovredna koda Java: Java program za iskanje faktorijel z uporabo rekurzije