코딩을 공부하는 가장 좋은 방법은 무엇일까? 누군가는 무조건 많이 작성하는 것이 최고라고 하고, 또 누군가는 끊임없이 구글링하라고 한다. 그중에서도 내가 생각하기에 가장 핵심은 '왜?라고 질문하기'이다. 시험을 위한 공부는 빠르게 핵심만 짚고 넘어가는 것이 중요하다. 그러나 우리가 배우는 것은 실제 대화를 위한 '언어'이다. 그러한 언어를 이해하려면 역시 질문을 통해 깊이 파고들고, 원리에 대해 생각하는 시간을 가지는 것이 중요하다고 생각한다.
수도코드는 영어로 Pseudo-code로 유사, 혹은 의사 코드로도 불리며, 코딩을 위해 우리가 사용하는 언어를 조금 더 '알고리즘 화' 시킨 언어라고 할 수 있다. 그렇다면 이러한 수도코드는 왜 필요한 것인가?
그림을 그릴 때 흔히 '스케치 때 신경 쓴 만큼 채색 후 결과물도 탄탄하게 나온다'는 말을 듣게 된다. 이처럼 탄탄한 설계는 좋은 결과물을 위한 필수조건이다. 수도코드는 스케치와 같이 실제 코딩 작성 전 논리를 한 번 정리하여 차후 복잡한 코딩을 할 때 흔들리지 않게 도와준다. 또한, 컴퓨터는 생각보다 자세한 설명을 필요로 한다. 우리가 당연하다고 생각하는 부분도 생략되면 의도하지 않은 결과가 출력될 수 있으니 코딩 전에 수도코드를 통해 차근차근 정리해 보는 것도 나쁘지 않을 것이다.
그렇다면 실제 알고리즘을 수도코드로 작성해보자.
나이 입력을 받아 미성년자는 입장제한 알림을 띄우는 코드를 작성해보자.
// 1. 나이를 입력받는다.
// 2. 만약 나이가 만 19세 이하라면 알림을 띄운다.
// 3. 만약 나이가 만 19세 이상이면 입장을 허락한다.
참고
위키백과 - 의사코드