Java 에서 다른 숫자로 나누어 떨어지는지 확인하는 방법

JavaBeginner
지금 연습하기

소개

이 랩에서는 Java 에서 한 숫자가 다른 숫자로 나누어 떨어지는지 확인하는 방법을 배우게 됩니다. 나머지 연산자 (%) 를 사용하여 나눗셈의 나머지가 0 인지 확인하여 가시성을 결정하는 방법을 살펴보겠습니다.

다양한 숫자와 제수로 나머지 연산자를 사용하는 연습을 하고, Java 프로그램에서 오류를 방지하기 위해 0 으로 나누는 특수한 경우를 처리하는 방법도 배우게 됩니다.

나머지 연산자를 사용하여 나누기 가능성 확인

이 단계에서는 Java 에서 가시성을 확인하기 위해 나머지 연산자 (%) 를 사용하는 방법을 살펴보겠습니다. 나머지 연산자는 나눗셈의 나머지를 제공합니다. 나눗셈의 나머지가 0 이면, 숫자가 제수로 완벽하게 나누어 떨어진다는 의미입니다.

이를 시연하기 위해 새로운 Java 프로그램을 만들어 보겠습니다.

  1. 왼쪽의 파일 탐색기에서 ~/project 디렉토리를 엽니다.

  2. ~/project 디렉토리 내의 빈 공간을 마우스 오른쪽 버튼으로 클릭하고 "새 파일"을 선택합니다.

  3. 새 파일의 이름을 DivisibilityCheck.java로 지정합니다.

  4. 코드 편집기에서 DivisibilityCheck.java 파일을 엽니다.

  5. 다음 코드를 복사하여 편집기에 붙여넣습니다.

    public class DivisibilityCheck {
        public static void main(String[] args) {
            int number = 10;
            int divisor = 2;
    
            // Use the modulo operator to check for divisibility
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
    
            number = 11;
            divisor = 3;
    
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
        }
    }

    새로운 부분을 살펴보겠습니다.

    • int number = 10;: number라는 정수 변수를 선언하고 값 10 을 할당합니다.
    • int divisor = 2;: divisor라는 정수 변수를 선언하고 값 2 를 할당합니다.
    • number % divisor: 이것은 나머지 연산입니다. numberdivisor로 나눈 나머지를 계산합니다.
    • if (number % divisor == 0): 이것은 if 문입니다. 나머지 연산의 결과가 0 과 같은지 확인합니다. 그렇다면 if 블록 내부의 코드가 실행됩니다.
    • else: if 문의 조건이 false(나머지가 0 이 아님) 이면 else 블록 내부의 코드가 실행됩니다.
  6. 파일을 저장합니다 (Ctrl+S 또는 Cmd+S).

  7. WebIDE 하단에서 터미널을 엽니다. ~/project 디렉토리에 있는지 확인합니다. 그렇지 않은 경우 cd ~/project를 입력하고 Enter 키를 누릅니다.

  8. 다음 명령을 입력하고 Enter 키를 눌러 Java 프로그램을 컴파일합니다.

    javac DivisibilityCheck.java

    오류가 없으면 출력이 표시되지 않습니다. ~/project 디렉토리에 DivisibilityCheck.class 파일이 생성됩니다.

  9. 다음 명령을 입력하고 Enter 키를 눌러 컴파일된 Java 프로그램을 실행합니다.

    java DivisibilityCheck

    다음 출력이 표시되어야 합니다.

    10 is divisible by 2
    11 is not divisible by 3

이 출력은 프로그램이 나머지 연산자를 사용하여 가시성을 올바르게 확인했음을 확인합니다.

다양한 제수로 테스트

이전 단계에서는 10 을 2 로, 11 을 3 으로 나누어 떨어지는지 확인했습니다. 이제 프로그램에서 다른 숫자와 제수로 테스트하여 나머지 연산자의 동작 방식을 살펴보겠습니다.

  1. WebIDE 편집기에서 DivisibilityCheck.java 파일이 아직 열려 있지 않은 경우 엽니다.

  2. main 메서드에 몇 가지 더 많은 예제를 추가해 보겠습니다. main 메서드의 닫는 중괄호 } 앞에 다음 코드 줄을 추가합니다.

            System.out.println("\nTesting with different numbers:");
    
            number = 15;
            divisor = 5;
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
    
            number = 20;
            divisor = 7;
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }
    
            number = 100;
            divisor = 10;
            if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }

    numberdivisor에 대해 다른 값을 사용하여 세 가지 새로운 검사를 추가했습니다. System.out.println("\nTesting with different numbers:"); 줄은 출력을 더 명확하게 만들기 위해 빈 줄과 제목을 추가합니다.

  3. 수정된 DivisibilityCheck.java 파일을 저장합니다 (Ctrl+S 또는 Cmd+S).

  4. 터미널을 열고 ~/project 디렉토리에 있는지 확인합니다.

  5. 업데이트된 Java 프로그램을 컴파일합니다.

    javac DivisibilityCheck.java

    다시 말하지만, 컴파일이 성공하면 출력이 표시되지 않습니다.

  6. 컴파일된 프로그램을 실행하여 새 테스트 케이스의 결과를 확인합니다.

    java DivisibilityCheck

    이제 이전 단계의 출력과 새 테스트 케이스의 출력이 표시되어야 합니다.

    10 is divisible by 2
    11 is not divisible by 3
    
    Testing with different numbers:
    15 is divisible by 5
    20 is not divisible by 7
    100 is divisible by 10

이러한 테스트 케이스를 추가하면 나머지 연산자가 숫자가 다른 숫자로 완벽하게 나누어 떨어지는지 여부를 어떻게 올바르게 식별하는지 확인할 수 있습니다. 이는 짝수 또는 홀수 확인, 또는 정기적인 간격으로 작업 수행과 같은 많은 프로그래밍 작업에 사용되는 기본적인 개념입니다.

0 으로 나누기 예외 처리

수학에서 0 으로 나누는 것은 정의되지 않습니다. 프로그래밍에서 0 으로 나누려고 시도하거나 (또는 제수가 0 인 나머지 연산을 수행하려고 시도하는 경우) 일반적으로 오류가 발생합니다. 프로그램이 충돌하는 것을 방지하려면 코드에서 이 상황을 처리하는 것이 중요합니다.

DivisibilityCheck.java 프로그램을 수정하여 0 으로 나누기에 대한 검사를 포함해 보겠습니다.

  1. WebIDE 편집기에서 DivisibilityCheck.java 파일을 엽니다.

  2. 제수가 0 인 새로운 테스트 케이스를 추가합니다. main 메서드의 닫는 중괄호 } 앞에 다음 코드를 추가합니다.

            System.out.println("\nTesting division by zero:");
    
            number = 10;
            divisor = 0;
    
            if (divisor == 0) {
                System.out.println("Error: Division by zero is not allowed.");
            } else if (number % divisor == 0) {
                System.out.println(number + " is divisible by " + divisor);
            } else {
                System.out.println(number + " is not divisible by " + divisor);
            }

    추가한 내용은 다음과 같습니다.

    • if (divisor == 0): divisor 변수가 0 과 같은지 확인하는 새로운 if 문입니다.
    • System.out.println("Error: Division by zero is not allowed.");: 제수가 0 이면 이 줄은 오류 메시지를 출력합니다.
    • else if (number % divisor == 0): 이것은 else if 문입니다. 첫 번째 if 조건 (divisor == 0) 이 false 인 경우에만 확인됩니다. 여기서 나머지 검사를 수행하지만 제수가 0 이 아닌 경우에만 수행합니다.
  3. 수정된 DivisibilityCheck.java 파일을 저장합니다.

  4. 터미널을 열고 ~/project 디렉토리에 있는지 확인합니다.

  5. 업데이트된 Java 프로그램을 컴파일합니다.

    javac DivisibilityCheck.java
  6. 컴파일된 프로그램을 실행합니다.

    java DivisibilityCheck

    이전 단계의 출력과 0 으로 나누기 테스트 케이스의 출력이 표시되어야 합니다.

    10 is divisible by 2
    11 is not divisible by 3
    
    Testing with different numbers:
    15 is divisible by 5
    20 is not divisible by 7
    100 is divisible by 10
    
    Testing division by zero:
    Error: Division by zero is not allowed.

if (divisor == 0) 검사를 추가하여 제수가 0 일 때 잠재적인 오류를 방지함으로써 프로그램을 더욱 강력하게 만들었습니다. 이는 안정적인 코드를 작성하는 중요한 측면입니다.

요약

이 랩에서는 나머지 연산자 (%) 를 사용하여 Java 에서 숫자가 다른 숫자로 나누어 떨어지는지 확인하는 방법을 배웠습니다. DivisibilityCheck.java라는 Java 프로그램을 만들고 if 문을 사용하여 나눗셈의 나머지 (number % divisor) 가 0 과 같은지 확인했습니다. 나머지가 0 이면 숫자는 제수로 나누어 떨어집니다. 숫자가 나누어 떨어지는 경우와 그렇지 않은 경우의 예제를 통해 이를 시연했습니다.