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

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)를 찾는 방법을 배웁니다. 이는 if else 문의 도움으로 for와 while 루프를 사용하여 완료됩니다.

두 정수의 HCF 또는 GCD는 두 수를 정확하게 나누는(나머지 없음) 가장 큰 정수입니다.

예제1최대 공약수를 찾기 위해 for 루프와 if 문을 사용합니다

public class GCD {
    public static void main(String[] args) {
        int n1 = 81, n2 = 153, gcd = 1;
        for(int i = 1; i <= n1 && i <= n2; ++i)
        {
            // i가 두 정수의 공약수인지 확인합니다
            if(n1 % i==0 && n2 % i==0)
                gcd = i;
        }
        System.out.printf(" %d 과 %d 의 최대 공약수는 %d", n1, n2, gcd);
    }
}

이 프로그램을 실행할 때, 출력은 다음과 같습니다:

81 와 153 의 최대 공약수는 9

이제, 최대 공약수를 가진 두 숫자를 각각 n1와 n2중

그런 다음, i가 n보다 작을 때까지 for 루프를 실행합니다1와 n2까지 합니다. 이렇게 하면, 반복1두 숫자 중 가장 작은 모든 숫자를 찾아 최대 공약수를 구합니다.

n1와 n2모든 수가 i로 나누어지면 gcd를 숫자로 설정합니다. 가장 큰 수(GCD)를 찾을 때까지 진행합니다. 이 수는 n1와 n2로 나누면 나머지가 없습니다.}}

이 문제를 while 루프를 사용하여 해결할 수도 있습니다. 다음과 같이 표현할 수 있습니다:

예제2:while 루프와 if else 문을 사용하여 두 개의 숫자의 GCD를 찾습니다

public class GCD {
    public static void main(String[] args) {
        int n1 = 81, n2 = 153;
        while(n1 != n2)
        {
            if(n1 > n2)
                n1 -= n2;
            else
                n2 -= n1;
        }
        System.out.println("G.C.D = " + n1);
    }
}

이 프로그램을 실행할 때, 출력은 다음과 같습니다:

G.C.D = 9

GCD를 찾는 더 나은 방법입니다. 이 방법에서는 큰 정수에서 작은 정수를 뺄 수 있으며, 그 결과를 큰 정수를 저장하는 변수에 할당합니다. 이 과정은 n1와 n2일치합니다.

사용자가 양수만 입력할 때만 위 두 프로그램이 예상대로 작동합니다. 두 번째 예제의 일부 수정을 통해 양수와 음수의 GCD를 찾을 수 있습니다.

예제3:양수 모두가 GCD

public class GCD {
    public static void main(String[] args) {
        int n1 = 81, n2 = -153;
        n1 = ( n1 > 0) ? n1 : -n1;
        n2 = ( n2 > 0) ? n2 : -n2;
        while(n1 != n2)
        {
            if(n1 > n2)
                n1 -= n2;
            else
                n2 -= n1;
        }
        System.out.println("G.C.D = " + n1);
    }
}

이 프로그램을 실행할 때, 출력은 다음과 같습니다:

G.C.D = 9

Java 예제 모든 것