Page 14 -
P. 14
유치원생에게 일을 시키면서 대학생들만이 이해할 수 있는 용어를 사용하면 어린 아이들은
내용을 이해할 수 없고, 그 일은 해결되기 어렵다.
학교 축제에 동네 친구를 초대한다면, 동네 어디에서 버스
를 타야 하는지 쉽게 설명할 수 있다. 그러나 만약 그 동
네에 처음 오는 사람에게 설명한다면 버스 정류장에 어떻
게 가야 하는지부터 설명해야 한다.
그림 1-3 동네로 오는 방법 안내
누구에게 문제 풀이 과정을 설명하느냐에 따라서 그 내용
의 깊이나 양이 달라진다. 즉 문제 해결 방법을 다른 사람에게 설명한다면, 그 사람이 이해하
고 있는 수준에 맞춰서 설명해야 한다.
2 8 7 5 3 1과 같이 나열된 숫자를 대학생들에게 오름차순으로 재배치하라고 한다면 거의 바
로 1 2 3 5 7 8이라고 답을 말할 것이다. 순간적으로 결과를 말하면서 그 결과를 구하는 풀이
과정은 어떻게 했는지 생각하지 않을 수도 있다.
하지만 컴퓨터는 사람이 알려주지 않으면 정렬할 수 없다. 사람이 컴퓨터가 알아듣도록 설명
해야 한다.
프로그래밍은 문제 해결 방법을 컴퓨터 명령어로 작성하고 검수하는 과정
컴퓨터 프로그래밍 과정에 대해 좀 더 자세히 알아보자.
• 문제 해석
• 요구사항 분석
• 문제 해결 방법을 컴퓨터가 이해할 수 있는 수준으로 작성
• 처리 과정(명령) 지시(코딩) 및 디버깅
사람이 주어진 문제를 분석한다. 문제의 의미가 무엇인지, 무엇을 하는지 파악한다. 또한 결
과를 어떤 형태로 나타낼 것인지 파악한다.
문제 해결에 필요한 요구사항을 분석한다. 집에서 학교로 가는 문제를 보자. 단순한 해결 방
법은 걸어가면 된다. 시간이 오래 걸리겠지만, 문제는 해결된다.
그러나 지각하지 않는다는 요구사항이 붙으면 문제가 달라진다. 추가로 금액에 대한 요구사
항이 없다면 택시를 탄다. 적정 금액 이하에서 최고로 빠르게 갈 수 있는 방법을 찾는 것이 요
구사항이 될 수 있다.
014 │ 파이썬