I det här programmet lär du dig att hitta GCD (Greatest Common Divisor) eller HCF med en rekursiv funktion i Kotlin.
Detta program tar två positiva heltal och beräknar GCD med rekursion.
Besök den här sidan för att lära dig hur du kan beräkna GCD med hjälp av loopar.
Exempel: GCD med två nummer som använder rekursion
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 )
När du kör programmet blir resultatet:
GCD av 366 och 60 är 6.
I ovanstående program kallas den rekursiva funktionen tills n2 är 0. I slutändan är värdet för n1 GCD eller HCF för de angivna två siffrorna.
Steg för utförandeNej. | Rekursivt samtal | n1 | n2 | n1% n2 |
---|---|---|---|---|
1 | hcf (366, 60) | 366 | 60 | 6 |
2 | hcf (60, 6) | 60 | 6 | 0 |
Slutlig | hcf (6, 0) | 6 | 0 | - |
Här är motsvarande Java-kod: Java-program för att hitta GCD med rekursion