最大公約数を求める (再帰)

明解C言語 入門編 > 8. いろいろなプログラムを作ってみよう >

最大公約数を求める (再帰)

Java
class Lesson064 {
    public static void main(String[] args) {
        int n1 = 8;
        int n2 = 22;
        System.out.printf("%dと%dの最大公約数は%dです。\n", n1, n2, gcd(n1, n2));
    }

    static int gcdf(int vx, int vy) {
        return (vy == 0 ? vx : gcdf(vy, vx % vy));
    }

    static int gcd(int va, int vb) {
        return (va > vb ? gcdf(va, vb) : gcdf(vb, va));
    }
}

実行結果

L:\>java Lesson064
8と22の最大公約数は2です。