inblog logo
|
sxias
    알고리즘

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

    문정준's avatar
    문정준
    Feb 06, 2025
    [알고리즘] 1. 짝수 / 홀수 문제
    Contents
    짝수/ 홀수 판별 문제문제 분석코드 작성결과

    짝수/ 홀수 판별 문제

    • 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
    Contents
    짝수/ 홀수 판별 문제문제 분석코드 작성결과

    Sxias ㆍ a32176740@gmail.com

    RSS·Powered by Inblog