V tomto programe sa naučíte nájsť GCD (Greatest Common Divisor) alebo HCF pomocou rekurzívnej funkcie v Kotline.
Tento program má dve kladné celé čísla a pomocou rekurzie počíta GCD.
Na tejto stránke nájdete informácie o tom, ako vypočítať GCD pomocou slučiek.
Príklad: GCD dvoch čísel pomocou rekurzie
fun main(args: Array) ( val n1 = 366 val n2 = 60 val hcf = hcf(n1, n2) println("G.C.D of $n1 and $n2 is $hcf.") ) fun hcf(n1: Int, n2: Int): Int ( if (n2 != 0) return hcf(n2, n1 % n2) else return n1 )
Po spustení programu bude výstup:
GCD 366 a 60 je 6.
Vo vyššie uvedenom programe sa rekurzívna funkcia volá, kým n2 nie je 0. Nakoniec je hodnotou n1 GCD alebo HCF daných dvoch čísel.
Kroky vykonaniaČ. | Rekurzívne volanie | n1 | n2 | n1% n2 |
---|---|---|---|---|
1 | hcf (366, 60) | 366 | 60 | 6 |
2 | hcf (60, 6) | 60 | 6 | 0 |
Konečný | hcf (6, 0) | 6 | 0 | - |
Tu je ekvivalentný kód Java: Program Java na vyhľadanie GCD pomocou rekurzie