이 글에서는 자바(Java)를 사용해 숫자가 짝수인지 홀수인지 판별하는 방법을 단계별로 살펴봅니다. 판별 원리는 매우 간단합니다. 주어진 숫자를 2로 나눈 나머지가 0이면 짝수, 0이 아니면 홀수입니다.
입력 및 출력 예시
예를 들어 사용자가 45를 입력했다고 가정해 보겠습니다.
입력
숫자를 입력하세요 : 45
출력
45은(는) 홀수입니다
알고리즘
- 프로그램을 시작합니다.
- 정수형 변수
my_input을 선언합니다. - 사용자로부터 값을 입력받거나, 값을 미리 정의합니다.
- 모듈로 연산자(
%)를 사용해my_input % 2값을 계산합니다. - 결과가 0이면 짝수, 그렇지 않으면 홀수로 판별합니다.
- 결과를 화면에 출력합니다.
- 프로그램을 종료합니다.
핵심 개념: 모듈로 연산자(%)
자바에서 % 연산자는 나눗셈의 나머지를 반환합니다. 예를 들어 45 % 2의 결과는 1이므로 45는 홀수이고, 44 % 2의 결과는 0이므로 44는 짝수입니다.
예제 1 - 사용자 입력값으로 판별하기
아래 예제는 java.util.Scanner 클래스를 사용해 사용자로부터 숫자를 입력받은 뒤, 해당 숫자가 짝수인지 홀수인지 콘솔에 출력합니다. 실행 과정을 이해하기 쉽도록 중간 안내 문구도 함께 출력됩니다.
import java.util.Scanner;
public class EvenOdd {
public static void main(String[] args) {
int my_input;
System.out.println("필요한 패키지를 가져왔습니다");
Scanner my_scanner = new Scanner(System.in);
System.out.println("Scanner 객체가 생성되었습니다");
System.out.print("숫자를 입력하세요 : ");
my_input = my_scanner.nextInt();
if (my_input % 2 == 0)
System.out.println(my_input + "은(는) 짝수입니다");
else
System.out.println(my_input + "은(는) 홀수입니다");
}
}
실행 결과
필요한 패키지를 가져왔습니다 Scanner 객체가 생성되었습니다 숫자를 입력하세요 : 45 45은(는) 홀수입니다
예제 2 - 미리 정의된 값으로 판별하기
이번에는 변수에 값이 미리 정의되어 있는 경우입니다. 별도의 사용자 입력 없이 정의된 값을 바로 검사해 결과를 콘솔에 출력합니다.
public class EvenOdd {
public static void main(String[] args) {
int my_input;
my_input = 45;
System.out.println("검사할 숫자 : " + my_input);
if (my_input % 2 == 0)
System.out.println(my_input + "은(는) 짝수입니다");
else
System.out.println(my_input + "은(는) 홀수입니다");
}
}
실행 결과
검사할 숫자 : 45 45은(는) 홀수입니다
참고 - 음수 처리 시 주의점
자바에서 나머지 연산은 피연산자의 부호를 유지하므로, 예를 들어 -3 % 2의 결과는 1이 아닌 -1이 됩니다. 따라서 홀수 판별 시 n % 2 == 1 대신 n % 2 != 0 조건을 사용하면 양수와 음수를 모두 안전하게 처리할 수 있습니다.