Java 菜鸟教程

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Java 异常处理

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java程序使用递归查找最大公约数

Java 实例大全

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

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

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

示例:使用递归的两个数字的GCD

public class GCD {

    public static void main(String[] args) {
        int n1 = 366, n2 = 60;
        int hcf = hcf(n1, n2);

        System.out.printf("G.C.D of %d and %d is %d.", n1, n2, hcf);
    }

    public static int hcf(int n1, int n2)
    {
        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。

执行步骤
No.递归调用n1n2n1 % n2
1hcf(366,60)366606
2hcf(60,6)6060
最后hcf(6,0)60--

Java 实例大全