Menu
Coddy logo textTech

나머지 연산자

Coddy Java 여정의 기초 섹션에 포함된 레슨. 73개 중 16번째.

모듈로 연산자 %는 나눗셈의 나머지를 구합니다. Java에서는 다음과 같은 간단한 구문으로 사용합니다:

result = dividend % divisor;
  • dividend: 나누어지는 수.
  • divisor: dividend를 나누는 수.
  • result: 나눗셈의 나머지.

예를 들어:

result = 10 % 3;

여기서는 10을 3으로 나눕니다. 3은 10에 세 번 들어가고, 나머지는 1입니다. 따라서 result는 1이 됩니다.

dividend가 divisor보다 작으면 어떻게 될까요? 이 경우 divisor는 0번 들어가므로 나머지는 단순히 dividend 자체입니다. 예를 들어, 2 % 32와 같습니다. 3은 2에 0번 들어가고 2가 남기 때문입니다.

일반적으로 모듈로는 어떤 수가 짝수인지 홀수인지 확인하는 데 사용됩니다:

  • 어떤 수가 짝수라면, 그 수를 2로 나눌 때 나머지는 0이 됩니다.
  • 어떤 수가 홀수라면, 그 수를 2로 나눌 때 나머지는 1이 됩니다.

부동 소수점 숫자(double)에 모듈로를 사용할 때는 정수와 비슷하게 작동하지만 소수점 정밀도를 유지합니다. 예를 들면 다음과 같습니다.

double result = 5.5 % 2.0;
// result는 1.5입니다

작동 방식은 다음과 같습니다. 2.0은 5.5에 두 번 들어가며(4.0), remainder는 1.5입니다(5.5 - 4.0 = 1.5).

참고: double 값은 근사값으로 저장되므로 일부 remainder가 아주 작은 오차와 함께 출력됩니다. 예를 들어 5.2 % 2.01.2가 아니라 1.2000000000000002로 출력됩니다. 이는 정상적인 부동 소수점 동작이며, 코드의 실수가 아닙니다.

또 다른 예시:

double result = 7.5 % 3.5;
// result는 0.5입니다
challenge icon

챌린지

초급

a (int), b (double), c (int) 세 변수를 각각 9, 2.6, 11 값으로 초기화하는 코드를 작성하세요.

그런 다음 다음 변수들을 초기화하세요:

  • d (int): a2로 나눈 나머지를 저장합니다. 
  • e (int): a3으로 나눈 나머지를 저장합니다.
  • f (double): b1.5로 나눈 나머지를 저장합니다.
  • g (double): b3.9로 나눈 나머지를 저장합니다.
  • h (int): c10으로 나눈 나머지를 저장합니다.

결과를 확인하고 서로 다른 dividend와 divisor가 result에 어떤 영향을 미치는지 살펴보세요.

직접 해보기

public class Main {
    public static void main(String[] args) {
        // 아래에 코드를 작성하세요
        
        
        // 아래 줄은 변경하지 마세요
        System.out.println("a = " + a);
        System.out.println("b = " + b);
        System.out.println("c = " + c);
        System.out.println("d = " + d);
        System.out.println("e = " + e);
        System.out.println("f = " + f);
        System.out.println("g = " + g);
        System.out.println("h = " + h);
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: 온라인 Java 컴파일러