8. 절차와 오류 검출을 활용한 그림 완성하기

1절차와 오류를 검출하면서 그림 그리는 순서 알아보기

알고리즘은 주어진 어떤 문제를 해결하기 위한 절차, 방법, 명령어들의 집합을 의미하며, 넓게는 사람 손으로 해결하는 것, 컴퓨터로 해결하는 것, 수학적인 것, 비수학적인 것을 모두 포함한다.

알고리즘은 어떻게 구성하는가에 따라 같은 문제를 풀더라도 오래 걸릴 수도 있고, 오류가 생길 수도 있으므로 효율적이고, 명확하게 만드는 것이 중요하다. 따라서 절차대로 문제를 해결하다가 오류가 발생하면 그 오류를 찾아 해결하고 절차를 진행한다면 쉽게 문제를 풀 수 있게 된다.

컴퓨터가 그림을 그리기 위해서는 절차나 방법을 제시해주어야 한다.


이미지. 3x3칸의 표에서 검정색 X자 모양으로 색칠된 이미지

위와 같은 그림을 그리기 위해서는 다음과 같은 절차가 필요하다.

색칠한다. 오른쪽으로 한 칸 이동한다. 오른쪽으로 한 칸 이동한다. 색칠한다. 아래 칸으로 이동한다. 왼쪽으로 한 칸 이동한다. 왼쪽으로 한 칸 이동한다. 오른쪽으로 한 칸 이동한다. 색칠한다. 오른쪽으로 한 칸 이동한다. 아래 칸으로 이동한다. 왼쪽으로 한 칸 이동한다. 왼쪽으로 한 칸 이동한다. 색칠한다. 오른쪽으로 한 칸 이동한다. 오른쪽으로 한 칸 이동한다. 색칠한다.

위와 같은 절차를 통해 그림을 그리다가 오류가 생기면 수정을 하고 올바른 절차를 입력해주면 올바르게 그림을 그릴 수가 있다.

이를 게임 형태로 알아보자.

2친구와 함께 오류를 검출하면서 그림 그리는 절차 표시하기

[활동목표]
그림을 보고 그림을 그릴 수 있는 절차를 표시할 수 있다.
[활동안내]
이미지. 친구와 함께 오류를 검출하면서 그림 그리는 절차 표시하기 동영상의 스크린샷
[활동]
A학생은 파란색으로 절차를 표시
B학생은 빨간색으로 절차를 표시
이미지. 3x3칸의 표에서 검정색 ㄱ자 모양으로 색칠한 이미지를 두 학생이 절차를 표시한 이미지

절차가 끝나면 반대로 절차대로 그림을 그려보는 활동을 해서 절차가 올바른지? 오류는 없는지? 다시 한번 확인할 수 있도록 한다.

[준비물]
활동지, 학용품, 싸인펜
[활동팁]
1.처음에는 3X3 활동지로 활동을 구성해서 여러 번 하게 한 후 5X5판을 활용하여 학생들이 좋아하는 그림을 그려서 활동을 하도록 한다. 2.위의 활동을 할 때 가장 주의해야 할 점은 항상 시작은 왼쪽에서 해야 한다는 점이다. 첫 번째 줄에서 오른쪽 끝까지 절차가 끝나면 두 번째 줄 역시 내려와서 왼쪽 끝으로 다시 이동한 후 시작하면서 색칠을 해야한다는 점을 학생들에게 알려주어야 한다. 이렇게 하는 이유는 이미지판이 홀수일 때와 짝수일 때 끝나는 지점이 다를 수 있으므로 시작과 끝을 유지하기 위해서이다.

3보조활동

[활동목표]
그림을 보고 그림을 그릴 수 있는 절차를 표시할 수 있다.
[보조활동]
이미지. 3곱하기3칸의 표에서 빨강, 노랑, 파랑, 초록, 검정색을 이용하여 X자 모양으로 색칠된 이미지
[준비물]
활동지, 색연필 또는 싸인펜
[활동팁]
그림을 보고 그림을 그릴 수 있는 절차를 표시할 수 있도록 한다.
색상을 다양하게 해서 색상이 그려지는 순서를 살펴볼 수 있도록 한다.

8-1
절차 표시하기

그림을 보고 그림을 그릴 수 있는 절차를 표시할 수 있다.

이미지. 5x5칸의 표에서 검정색으로 그려진 그림을 보고 절차를 표시해 보자

이미지. 5x5칸의 표에서 검정색으로 그려진 그림을 보고 절차를 표시해 보자

8-2
절차 표시하기

그림을 보고 그림을 그릴 수 있는 절차를 표시할 수 있다.

이미지. 5x5칸의 표에서 빨강, 주황, 노랑, 초록색으로 그려진 그림을 보고 절차를 표시해 보자

이미지. 5x5칸의 표에서 파랑, 하늘색으로 그려진 그림을 보고 절차를 표시해 보자

더 알아보기

1알고리즘은 어떻게 표현할까?

가. 자연어 알고리즘(자연어 표현법, 일상 언어 표현법)

자연어 알고리즘을 쉽게 표현하면 자연어 표현법, 일상 언어 표현법이라고도 한다. 이 방법은 일상적으로 사용하는 말로써 문제를 해결하는 과정을 순서대로 나열하는 것이다. 자연어는 일상적인 언어를 사용하기 때문에 매우 쉽게 표현할 수 있지만 모호하게 표현하기 쉽다는 단점이 있다.

1) 자연어 알고리즘의 예
⦁ 양치질하는 알고리즘 ① 칫솔에 치약을 바른다. ② 입속에 칫솔을 넣는다. ③ 양치질을 한다. ④ 입을 헹군다.

나. 순서도로 표현

순서도는 약속된 기호를 사용하여 알고리즘을 표현하는 방법이다. 순서도 표현 방식에서는 일련의 수행과정을 공용의 약속 기호로 표시하고, 화살표로 수행과정을 순서대로 연결하여 알고리즘을 표현한다. 순서도 방식은 수행과정을 전체적으로 쉽게 살펴볼 수 있다는 장점이 있지만 복잡한 알고리즘이나 블록형 언어를 표현하기 어렵다는 단점을 가지고 있다.

기호 이름 역할
이미지. 단말 순서도 기호. 가로 길이가 긴 타원 모양으로 되어있다. 단말 순서도의 시작과 끝
이미지. 흐름선 순서도 기호. 화살표 모양으로 되어있다. 흐름선 작업 흐름을 명시
이미지. 준비 순서도 기호. 가로 길이가 긴 육각형 모양으로 되어있다. 준비 작업 단계 시작 전 준비
(변수 및 초기치 선언 등)
이미지. 처리 순서도 기호. 가로 길이가 긴 직사각형 모양으로 되어있다. 처리 처리해야 할 작업을 명시
(변수에 계산값 입력 등)
이미지. 입출력 순서도 기호. 가로 길이가 긴 평행사변형 모양으로 되어있다. 입출력 일반적인 데이터의 입력 또는 결과의 출력
기호 이름 역할
이미지. 판단 순서도 기호. 가로 길이가 긴 마름모 모양으로 되어있다. 판단 조건에 따라 흐름선을 선택
(일반적으로 참, 거짓 구분)
이미지. 수동입력 순서도 기호. 가로 길이가 긴 직사각형과 그 위에 오른쪽이 직각인 직각 삼각형을 합친 모양으로 되어있다. 수동입력 키보드를 통한 입력
이미지. 서브루틴 순서도 기호. 가로 길이가 긴 직사각형 모양에 세로변 안쪽에 또 다른 세로변이 있는 모양으로 되어있다. 서브루틴 미리 정의해 둔 부프로그램 호출
이미지. 프린트 순서도 기호. 가로 길이가 긴 직사각형 모양에 하단에는 태극 무늬 모양으로 되어있다. 프린트 프린터를 이용한 출력
(서류 등의 지면에 출력)
이미지. 화면표시 순서도 기호. 왼쪽에는 가로 길이가 긴 육각형 모양의 절반과 오른쪽에는 가로 길이가 긴 타원 모양의 절반이 합쳐진 모양으로 되어있다. 화면표시 처리결과 또는 메시지를 모니터를 이용하여 출력
[그림] 순서도 기호