Kotlin 递归查找最大公约数程序

此程序接受两个正整数,并使用递归计算它们的最大公约数(GCD)。

访问此页面了解如何使用循环在Kotlin中计算GCD:在Kotlin中使用循环计算GCD

示例:递归求两个数的GCD

fun main(args: Array<String>) {
    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
}

运行程序后,输出将是

G.C.D of 366 and 60 is 6.

在上面的程序中,递归函数一直被调用,直到n2为0。最终,n1的值就是给定两个数的GCD或HCF。

执行步骤
序号。 递归调用 n1 n2 n1 % n2
1 hcf(366, 60) 366 60 6
2 hcf(60, 6) 60 6 0
最终 hcf(6, 0) 6 0 -

以下是等效的Java代码:Java递归函数求最大公约数程序

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战