스크래치로 순차구조 배우기 – 01

스크래치로 순차구조 배우기 – 01

204
0
SHARE

순차구조는 구조적 프로그래밍에서 제시하는 프로그램 구조 중 하나입니다.

위키백과에서 순차구조를 검색하면 다음과 같이 구조적 프로그래밍에서 저수준의 구조 중 하나로 설명하고 있습니다.

 


저수준의 관점에서 구조적 프로그램은 간단하고, 계층적인 프로그램 제어 구조로 구성된다. 이 제어 구조들은 하나의 구문으로 간주되며, 동시에 더 간단한 구문들을 결합시키는 방법이다. 더 간단한 구문들은 또 다른 제어 구조일 수도 있고, 할당문이나 프로시저 호출과 같은 기본 구문일 수도 있다. 에츠허르 데이크스트라가 확인한 3가지 형태의 구조는 순차, 선택, 반복이다.

 

  • 순차(concatenation)는 구문 순서에 따라서 순서대로 수행된다는 것이다.
  • 선택(selection)은 프로그램의 상태에 따라서 여러 구문들 중에서 하나를 수행하는 것이다. 주로 if..then..else..endif, switch, case와 같은 키워드로 표현한다.
  • 반복(repetition)은 프로그램이 특정 상태에 도달할 때까지 구문을 반복하여 수행하거나, 집합체의 각각의 원소들에 대해 어떤 구문을 반복 수행하는 것이다. 보통 while, repeat, for, do..until 같은 키워드로 표현한다. 종종 반복 영역의 시작점을 하나로 하는 것이 추천되며, (원조 구조적 프로그래밍에서는 종료점도 하나로 해야한다고 추천하고,) 몇 가지 언어에서는 이것을 꼭 지켜야 하도록 하고 있다.

출처 – 구조적 프로그래밍(위키백과)


2015개정교육과정 초등 실과 소프트웨어교육 성취기준에서는 소프트웨어교육 내용으로 기초순차, 반복, 선택 구조를 배우도록 하고 있습니다.

 

“순차는 구문 순서에 따라 순서대로 수행된다는 것이다.”

 

위의 정의에서 보는 것과 같이 순차는 컴퓨터 프로그램 구조나 소프트웨어교육에서 가장 기본이 되는 구조입니다. 컴퓨터는 구문에서 제시한 순서대로(기본 방향은 위에서 아랫방향)으로 동작을 하고 이는 반복, 선택, 복잡한 함수와 상관없이 모든 과정에서 동일하게 진행됩니다. 가장 기본이 되는 구조이지만 한편으로 학생들이 가장 소홀히 되고 많이 틀리는 구조이기도 합니다.

다음 동영상을 보면서 컴퓨터가 어떻게 순차동작을 진행하는지 알아봅시다.

 

 

첫번째 구조를 보면 “10만큼 움직이기” 블록 3개를 사용해서 순서대로 명령을 입력하였습니다.

그 결과 X좌표의 값이 10 + 10 + 10 만큼 증가하였고 결과적으로 30만큼 움직였습니다.

 

Screenshot_2016-12-29-143434-GMT9-282x300

두번째 구조를 보면 “30만큼 움직이기” 블록 1개를 사용해서 순서대로 명령을 입력하였습니다.

그 결과 X좌표의 값이 30만큼 증가하였고 결과적으로 30만큼 움직였습니다.

 

Screenshot_2016-12-29-143440-GMT9-300x224

첫번째 명령이나 두번째 명령 모두 동일한 결과값을 가지고 있지만 실제 컴퓨터에서 동작을 하는 과정을 보면 아래 그림과 같이 차이점이 있습니다.

하지만 컴퓨터는 읽고 처리하고 실행하는 속도가 인간이 감지하기 어려울만큼 빠르기 때문에 영상에서는 동일한 속도로 보이게 됩니다.

 

Screenshot_2016-12-29-143255-GMT9-300x220 Screenshot_2016-12-29-143409-GMT9-300x202

컴퓨터는 명령블록에 대한 입력 – 처리 – 실행의 과정에 따라 진행되는 데 순차구조는 제시한 명령의 순서에 따라 순서대로 동작하는 구조라는 것을 기억하시기 바랍니다.