Page 13 -
P. 13

고 가장 빨리 도착할 수 있는 방법을 찾을 수 있다.
                                                                                                    1
                   핵심은 요구사항이다. 문제에 대한 정확한 요구사항이 결정되어야 우리는 문제를 해결하는
                   방법을 명확하게 찾을 수 있다.

                   그리고 나서 문제를 해결하는 방법, 즉 알고리즘이라는 것을 찾아내야 한다. 알고리즘이란 어
                   떤 문제를 해결하기 위한 절차, 방법, 명령어들의 집합으로 주어진 문제를 논리적으로 해결하                               프로그래밍, 파이썬, 주석문
                   기 위해 필요하다.

                   맛있는 음식을 먹겠다고 하면, ‘맛있다’에 대해 구체적이고 정량적인 평가 방법을 정해 메뉴를
                   선택해야 한다. 가성비가 높다는 것도 ‘가격’과 ‘맛’이라는 것을 평가해서 비교할 수 있도록 만
                   들어야 메뉴 선택이 가능해진다.

                   집에서 학교로 이동하는 문제를 해결하기 위해 교통비를 최소한으로 줄이는 방법을 찾거나,
                   혹은 같은 비용을 지불해도 최대한 빨리 갈 수 있는 방법을 찾는 것은 상대적으로 쉽게 해결
                   할 수 있을 것이다.

                                                 이와 같이 문제와 요구사항에 맞춰 해결하는 방법을 찾
                                                 고, 그 과정을 알고리즘으로 표현할 수 있다.

                                                 해결 과정을 설명한다는 점에서 알고리즘은 요리 레시
                                                 피(recipe)와 비슷하다. 어떤 재료를 어떻게 다듬어서 어
                   그림 1-1 출발부터 도착까지 다른 이동 방법
                                                 떠한 절차를 거쳐 원하는 요리를 얻는 레시피는 요리
                   알고리즘이다.

                   문제를 해결할 방법을 찾았으면, 이를 적용해서 제대로 답을 찾았는지 확인해야 한다. 이를
                   검수 과정이라고 부른다.
                                                 해결 방법에 오류가 있으면, 알고리즘을 수정하고 다
                                                 시 검수하는 과정을 반복하게 된다.

                                                 이와 같은 검수 과정을 거치면서 우리는 점점 더 정확
                                                 한 문제 해결 방법을 찾고 만들게 된다.

                                                 프로그래밍은 문제 분석, 요구사항 구체화, 해결 과정
                                                 정리(알고리즘 개발), 검수의 모든 과정이다.
                   그림 1-2 답을 제대로 찾았는지 검수하기


                   작업수행자가 알아 듣도록 문제풀이 과정을 전달

                   문제 해결 과정을 자신이 진행하지 않고 다른 사람에게 시키려면 그 사람이 이해할 수 있는
                   수준으로 해결 과정을 설명해야 한다.


                                                                           1장  프로그래밍, 파이썬, 주석문 │  013
   8   9   10   11   12   13   14   15   16   17   18