Page 13 - 컴퓨팅 사고와 함께하는 파이썬기초부터 인공지능 응용까지 도서 미리보기
P. 13

022 PART 1? 컴퓨팅 사고의 이해

CHAPTER

 2? 문제 해결과 컴퓨팅 사고

기본 학습 목표                         심화 학습 목표
?? 문제 분해, 패턴 인식, 추상화, 자동화 등의 하위  ?? 알고리즘 수행 과정에서 특정 연산이 몇 차례 수행되는
	 요소를 들어 컴퓨팅 사고를 설명할 수 있다.
?? 알고리즘이 충족시켜야 할 요건들을 설명할 수 있다.     지 분석할 수 있다.
?	 문제 해결 활동을 계산이라는 관점에서 설명할 수    ?? 특정 상황 속의 사물들을 계층 구조로 개념화시킬 수
	 있다.
                                    있다.
                                 ?? 미래 핵심 역량으로서 컴퓨팅 사고 능력을 키움으로써

                                    얻게 되는 유익을 설명할 수 있다.

컴퓨팅이 문제를 해결할 때 사용하는 가장 강력한 수단 중 하나가 프로그래밍이다. 사
실 프로그래밍의 목적 자체가 문제해결이다. 컴퓨팅은 컴퓨팅 사고를 적용해 문제 해
결에 적합한 해결책이 무엇이며 요구되는 구체적 활동(계산)이 무엇인지 찾아내고, 그
활동을 특정 컴퓨터가 수행하게 만듦으로써 다양한 영역의 문제들을 해결해 왔다. 2
장에서는 문제 해결 과정에 컴퓨팅 사고가 어떻게 적용되는지, 우리가 살아가면서 부
딪히게 될 수많은 문제를 다룰 때 컴퓨팅 사고가 어떤 유익을 주는지 살펴본다.

2.1? 문제와 문제 해결

문제(problem)란 ‘초기 상태(initial state)’와 ’목표 상태(goal state)’ 사이에 거리(간격,
괴리, 장애)가 존재하는 상황을 말하고, 적정 경로를 거쳐 초기 상태에서 목표 상태
로 이동해 가는 과정을 문제해결(problem solving)이라 한다. 우리가 일상에서 수행하
는 모든 활동을 문제 해결과 연계시켜 생각해 볼 수 있다. ‘집에서 학교가기’, ‘친구에
게 문자 보내기’, ‘여행 일정 짜기’, ‘보고서 쓰기’ 등 우리가 일상 생활 속에서 해결해야
할 문제는 다양하다. ‘집에서 학교가기’ 문제의 초기상태는 ‘집에 있는 상태’이고 목표
상태는 ‘학교에 도착한 상태’이다. 학교에 가기 위해 처리하고 거쳐야 하는 모든 것들
이 '거리'에 해당되며, 임의의 한 경로를 거쳐 학교에 도착하게 되면 문제가 해결된 것
이다. 집이나 직장에서 하는 일은 물론, 학교에서 하는 공부나 친구들과 어울려 즐기
   8   9   10   11   12   13   14   15   16   17   18