Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java로 약수의 개수가 짝수인지 홀수인지 확인하는 방법

어떤 수의 약수(제수) 개수가 짝수인지 홀수인지 판별하려면 제곱근을 활용하면 간단하게 해결할 수 있습니다. 아래에서 Java 코드 예제와 함께 자세히 살펴보겠습니다.

핵심 원리

약수의 개수는 대부분 짝수이지만, 완전제곱수(예: 1, 4, 9, 16, 25...)만 유일하게 홀수 개의 약수를 가집니다. 그 이유는 완전제곱수의 경우 제곱근 값 자체가 중복 없이 하나의 약수로 계산되기 때문입니다. 따라서 주어진 숫자가 완전제곱수인지만 확인하면 약수의 개수를 알아낼 수 있습니다.

코드 예제

import java.io.*;
import java.math.*;
public class Demo{
    static void divisor_count(int n_val){
        int root_val = (int)(Math.sqrt(n_val));
        if (root_val * root_val == n_val){
            System.out.println("약수의 개수는 홀수입니다");
        }else{
            System.out.println("약수의 개수는 짝수입니다");
        }
    }
    public static void main(String args[]) throws IOException{
        divisor_count(25);
    }
}

실행 결과

약수의 개수는 홀수입니다

코드 설명

Demo라는 이름의 클래스 안에는 divisor_count 함수가 정의되어 있으며, 이 함수는 특정 숫자의 약수 개수가 짝수인지 홀수인지 판별합니다.

동작 과정은 다음과 같습니다:

1. Math.sqrt() 메서드로 입력값의 제곱근을 구한 후 정수형으로 변환합니다.
2. 구한 제곱근 값을 다시 제곱하여 원래 숫자와 일치하는지 비교합니다.
3. 두 값이 같다면 완전제곱수이므로 약수의 개수는 홀수, 그렇지 않다면 짝수입니다.

main 함수에서는 divisor_count에 25를 인자로 전달하여 호출합니다. 25는 5 × 5로 표현되는 완전제곱수이기 때문에 콘솔에는 '약수의 개수는 홀수입니다'라는 메시지가 출력됩니다. 실제로 25의 약수는 1, 5, 25로 총 3개로, 홀수임을 확인할 수 있습니다.