본문 바로가기
Develop/ETC

의사코드(수도코드; pseudocode)란?

by jaeyoungb 2022. 9. 27.

수도코드


의사코드 즉, 수도코드는 설명서라고 생각하면 편하다.

 

어떠한 코드를 구현하기 전에, 우리말로 어떤 식으로 코드를 작성할지 적는 것이다.

 

주로, 코딩 테스트를 위한 알고리즘 문제를 풀 때, 이 수도코드를 권장한다.

 

 

 

수도코드 예시


수도코드를 먼저 어떻게 사용되는지 예시를 통해보자.

 

간단하게, 성인과 미성년자를 구분하는 코드를 가져왔다.

 

// 미성년자와 성인을 구분하는 코드
// 1. 20세 미만일 경우, "미성년자"를 출력한다.
// 2. 20세 이상일 경우, "성인"을 출력한다.

    public static void adultCheck(int age) {

        // 20세 미만일 경우,
        if (age < 20) {
            System.out.println("미성년자");
        }
        // 20세 이상일 경우,
        else {
            System.out.println("성인");
        }
    }

 

이처럼, 단순하게 문제 해결을 위한 해결 순서, 방법을 적는 것이다.

 

 

 

수도코드 작성 단계


 

  1. 문제를 파악하고, 어떻게 풀지 생각한다.
  2. 해결 방법을 단계별로 나누어, 글로 풀어 적는다.

 

매우 간단하다.

 

우리가 코드를 작성할 때, 흔히 주석이라는 걸 사용해 코드 구문을 설명한다.

 

이 수도코드 또한 똑같다. 어떻게 문제를 풀지를 설명하는 것이다.

구체적으로 작성할수록 좋다.

 

 

 

수도코드 장점


  1. 시간이 단축된다.
  2. 디버깅에 용이하다.
  3. 프로그래밍 언어를 모르는 사람과 소통할 수 있다.

 

어려운 문제들은 코드의 길이가 엄청날 것이다. 우리가 단계별로 문제를 풀게 되면, 이전 단계에서 뭘했는지, 이젠 뭘해야하는지 까먹게 되는 상황이 발생할 수 있다. 이때, 자세하게 작성했던 수도코드를 참고하면, 진행 상황을 다시 정립할 수 있다.

 

디버깅은 코드를 작동시켰을 때, 오류가 난 부분을 해결하는 과정을 말한다. 잘 작성된 수도코드는 당연하게 디버깅 과정에 아주 용이할 것이다.

 

수도코드는 우리말로, 우리의 언어로 적어놓기 때문에, 프로그래밍 언어를 전혀 모르는 사람이 봐도 이해할 수 있고, 그 사람과 이 문제를 같이 해결해나갈 수 있다.

'Develop > ETC' 카테고리의 다른 글

프로젝트 설계  (0) 2022.12.19
프로젝트 기획  (0) 2022.12.19
메타인지란?  (0) 2022.08.20