English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Kotlin程序使用递归查找最大公因数

Coleção de Exemplos de Kotlin

在此程序中,您将学习使用Kotlin中的递归函数查找GCD(最大公因数)或HCF(最大公约数)。

该程序采用两个正整数,并使用递归计算GCD

访问此页面以了解如何使用循环来计算GCD

示例:使用递归的两个数字的最大公约数(GCD)

fun main(args: Array<String>) {
    val n1 = 366
    val n2 = 60
    val hcf = hcf(n1, n2)
    println("$n1和$n2的最大公因数等于$hcf.
}
fun hcf(n1: Int, n2: Int): Int {
    if (n2 != 0)
        return hcf(n2, n1 % n2)
    else
        return n1
}

Quando o programa é executado, a saída é:

366 e 6O maior divisor comum de 0 é 6.

 A função recursiva é chamada até que n2é 0. Por fim, n1O valor é o MCD ou HCF dos dois números dados.

Passos de Execução
Nº.Chamada Recursivan1n2n1 % n2
1hcf(366,60)366606
2hcf(60,6)6060
3hcf(6,0)60--

Aqui está o código Java equivalente:Programa Java usando recursão para encontrar o MCD

Coleção de Exemplos de Kotlin