Page 13 - 스크래치와 함께하는 컴퓨팅 사고 기초부터 프로젝트 완성까지 도서미리보기
P. 13

그림 2.5는 사실 요리를 만드는데 쓰는 레시피이다. 레시피는 구체적인 행위의 순차 흐름이라
 고 말할 수 있다. 요리에서는 행위와 레시피라는 용어를 사용하는데, 컴퓨팅 사고에서는 대신 명
 령어(instruction)와 알고리즘(algorithm)이라는 용어를 사용한다. 지금부터는 명령어와 알고리즘
 이라는 용어를 사용한다. 그림 2.5에서는 몇 가지 도형을 사용하여 알고리즘을 표현했는데 이것
 을 순서도(flowchart)라고 부른다.

   알고리즘은 순차(sequence), 선택(selection), 반복(repetition)이라는 세 가지 구조로 구성된
 다. 그림 2.5(b)의 알고리즘에는 세 가지 구조가 모두 포함되어 있다. 순차는 가장 기본적인 구조
 로서 명령어의 처리 순서를 기술한다. ‘사과 조각을 통에 넣는다’라는 명령어를 실행한 다음에 ‘10
 초 동안 전원 버튼을 눌러 간다’라는 명령어를 실행하도록 지시하고 있다. 선택은 조건에 따라 서
 로 다른 명령어를 수행하게 해주는 구조이다. ‘사과가 주먹보다 작은가?’라는 조건을 검사하여
 참이 될 때와 거짓이 될 때 서로 다른 명령어를 수행한다. 반복은 같은 명령어를 여러 번 실행해
 주는 구조이다. ‘충분히 곱게 갈아졌는가?’라는 조건이 거짓인 동안에는 ‘10초 동안 전원 버튼을
 눌러 간다’라는 명령어를 반복적으로 실행한다.

           실습문제
      ??일상생활의 문제를 하나 고른 다음, 문제를 분해하고 분해된 문제를 그림 2.3과 같이 그리시오.

  3? 컴퓨터를 이용한 문제해결

   앞 절에서는 일상에서 발생하는 문제를 해결하기 위한 논리적 사고에 대해 다루었다. 그림
 2.1(a)의 경우에 해당하며, 아침 먹기라는 예제 문제를 사용하여 문제해결 과정을 설명하였다. 이
 제는 그림 2.1(b)에 해당하는, 논리적 사고에 컴퓨터 기술을 적용하여 문제를 해결하는 컴퓨팅 사
 고에 대해 생각해본다. 소수의 개수를 알아내는 문제를 예제로 사용하여 설명한다. 컴퓨터를 이
 용하여 문제를 해결하는 과정에서도 일상생활의 문제해결과 마찬가지로 분해, 추상화, 병렬 처
 리, 알고리즘 설계를 이용한다.

   ■■?분해
   자율주행차에 장착할 도로 인식 프로그램을 개발하는 문제는 사람 생명과 관련되므로 아주 어
 렵다. 따라서 분해를 통해 풀기 쉬운 작은 문제로 분해하는 일은 매우 중요하다. 센서 개발, 인식

020 PART 1? 컴퓨팅 사고와 문제해결
   8   9   10   11   12   13   14   15   16   17   18