[알고리즘] 1. 짝수 / 홀수 문제

문정준's avatar
Feb 06, 2025
[알고리즘] 1. 짝수 / 홀수 문제

짝수/ 홀수 판별 문제

  • 1 ~ 1,000,000 까지의 수 중에 홀수는 홀수로 출력, 짝수는 짝수로 출력하는 프로그램을 작성하시오.
 

문제 분석

  • 짝수와 홀수를 판별해야 하므로 조건문 사용
    • 짝수와 홀수의 경우이므로 나머지가 0이거나 1인 경우로 구분
    • 1 ~ 1,000,000 까지의 수이므로 총 시행 횟수 = 1000000
 
 

코드 작성

package algo; public class Odd { public static void main(String[] args) { // 1. 1일 경우 : 홀수 int a = 1; System.out.println(a + "는 홀수입니다."); // 2. 2일 경우 : 짝수 > a+1 a++; System.out.println(a + "는 짝수입니다."); // 3. 3일 경우 : 홀수 > a+1 a++; System.out.println(a + "는 홀수입니다."); // .... // 모듈화 1 : a는 0부터, a++을 공통적으로 // 모듈화 2 : 홀수일 때, 짝수일 때 구분 ? a % 2 == 1 // 모듈화 3 : 출력문 : 반복문으로 > for? while? // 내가 생각한 반복문 : 경계값만 지정해서 코드를 줄일 수 있는 while 선택 // 최적화 코드 int a = 0; int limit = 1000000; while (true) { a++; String s = a % 2 == 1 ? "홀수입니다." : "짝수입니다."; if (a > limit) break; System.out.println(a + "은 " + s); } } }
코드를 작성할 때에는 절차에 맞춰서!
  1. 절차 적기 (주석 활용, 한글로 직접 적어보기)
  1. Hard Coding < 모든 경우를 직접 하지말고, 샘플링을 통한 패턴 분석
  1. 모듈화 진행 : 줄일 부분은 압축, 공통화
  1. 불필요한 부분은 반복문으로 압축
 

결과

notion image
 
Share article

sxias