본문 바로가기

IT프로그래밍/JAVA(자바)

[JAVA]자바 약수 개수 구하기 - 입력받은 수의 약수 개수 출력 소스 코드

자바 약수 개수 구하기 예제

사용자로부터 숫자를 입력 받은 후, 해당 수에 약수의 개수를 출력해주는 프로그램을 자바로 구현하라.

 

 

자바 약수 개수 구하기 소스 코드

import java.util.Scanner;

public class JAVA_EXAMPLE_005 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("약수의 개수를 구할 숫자를 입력하세요.");
        int num = sc.nextInt();
        
        int CountofDivisor = divisorCount(num);
        
        System.out.println(num +"의 약수의 개수 : " + CountofDivisor);
    }

    public static int divisorCount(int num)
    {
        int count = 0;
        int i = 1;
        while(i <= num)
        {
            if(num % i == 0)
                count += 1;
            i++;
        }
        return count;
    }
    
}

 

 

 

 

Java 약수의 개수 구하기 소스 코드 설명

1. 사용자로부터 숫자를 입력받습니다.

2. 입력받은 숫자를 파라미터로 하는 DivisorCount 메서드(Method)를 실행합니다.

3. 해당 메서드(Method)는 약수의 개수를 저장하는 int형 변수 count와, 파라미터 값(num)에 값을 증가시키며 % 연산을 수행 할 int형 변수 i가 있습니다. 

4. while 반복문의 조건은 변수 i가 입력된 파라미터 값(num)보다 작거나 같을 때 입니다. 즉 i가 num보다 커지면 while문은 종료됩니다.

5. while 반복문 안에서 num % i를 수행한 후, 그 값이 0이면(즉 나머지가 0이면)해당 i를 약수로 판단하고 count를 1증가 시킵니다.

6. 약수인지 아닌지와 상관없이 while반복문이 한번 수행 될 때 마다, i의 값은 1증가 시킵니다.

7. while문이 종료되면 return count;를 통해 그 결과값(count)을 반환합니다.

 

※위의 while문은 for(int i = 0; i <= num; i++)와 동일하다고 볼 수 있습니다. 같은 동작을 수행하는 반복문을 while을 사용하여 구성한것입니다.

 

 

Java 약수의 개수 구하기 결과

자바 약수 개수 빌드 결과 #1

 

자바 약수 개수 빌드 결과 #2

 

자바 약수 개수 빌드 결과 #3

 

 

약수의 개수가 아닌 모든 약수에 대해 출력하는 자바 소스 코드 및 설명은 아래 링크에서 참조하시면 됩니다.

https://manniz.tistory.com/entry/JAVA%EC%9E%90%EB%B0%94-%EC%95%BD%EC%88%98-%EA%B5%AC%ED%95%98%EA%B8%B0-%EC%9E%85%EB%A0%A5%ED%95%9C-%EC%88%AB%EC%9E%90%EC%9D%98-%EC%95%BD%EC%88%98%EB%A5%BC-%EC%B6%9C%EB%A0%A5-%EC%98%88%EC%A0%9C-%EC%86%8C%EC%8A%A4-%EC%BD%94%EB%93%9C

 

[JAVA]자바 약수 구하기 - 입력한 숫자의 약수를 출력 예제 / 소스 코드

자바 약수 구하기 특정한 수를 다른 수로 나누었을 때, 그 나머지가 0이되는 수를 약수라고 합니다. 즉 딱 나누어 지는 숫자를 약수라고 하죠 Java로 약수를 구하는 프로그램의 코드는 어떻게 되

manniz.tistory.com