[스크래치와 함께하는 프로그래밍 첫걸음] Chapter 12_기차 시간을 지키자!

2015/12/21
공유 레이어 열기/닫기
주소가 복사되었습니다.

배너

스크래치와 함께하는 프로그래밍 첫걸음. Chapter 12 기차시간을 지키자!

'스크래치와 함께하는 프로그래밍 첫걸음' 열두 번째 시간입니다. 혹시 기차 여행 좋아하시나요? 여행을 떠나는 방법은 다양해졌지만 아직도 기차 여행은 '낭만의 대명사'로 남아있는데요. 스크래치 덕분에 길도 잘 찾고 친구들과 스스럼없이 얘기도 나누게 된 깜토가 친구들과 기차 여행을 떠나려 합니다.

*프로그래밍을 배우기 위해선 먼저 스크래치 프로그램을 다운로드해야 합니다. 스크래치 프로그램 다운로드 방법은 프롤로그 편에 설명돼 있으니 아직 설치하지 않으신 분은 참조해주세요!

 

프로그래밍으로 기차 여행 구현하기!

깜토는 친구들을 한데 모아놓고 자신의 여행 계획을 얘기했는데요. 하트곰과 스크래치도 합류해 세 명이 여행을 떠나게 됐습니다. 그런데 자꾸 늦잠을 자는 하트곰은 자기 때문에 친구들이 기차 시간에 늦을까 걱정이네요.

친구들을 제 시각에 약속 장소로 모으기 위해 이번에도 스크래치가 나섰습니다. 오늘은 반복문을 응용해 여러 가지 규칙이 필요한 프로그램을 만들어보려 합니다. 그럼 시작해볼까요?

어느 날 깜토가 친구들을 불러서 계획을 이야기했어. 얘들아 나는 이제 곧 여행을 갈거야. 스크래치 덕분에 갈 길도 잘 찾을 수 있고 친구들과 이야기도 잘 하게 됐으니까! 깜토야. 나도 같이 가. 세계일주를 하려다가 숲 속만 헤맸다구.

 

– 깜토와 친구들 스프라이트 등록하기

무대 영역에 깜토와 하트곰을 배경으로 추가해주세요. 파일은 아래 링크를 통해 다운로드할 수 있습니다.

무대 영역에 깜토와 하트곰을 배경으로 추가해주세요. 파일은 아래 링크를 통해 다운로드할 수 있습니다.


함께 여행을 떠날 스크래치도 배경으로 추가해야겠죠? 그리고 기찻길 배경을 '배경 가져오기'에서 찾아 넣어주세요. 배경으로 추가한 친구들에겐 각각 '깜토' '하트곰' 스크래치'라 이름 붙여준 후 축소 버튼을 눌러 크기를 줄여줍니다.

함께 여행을 떠날 스크래치도 배경으로 추가해야겠죠? 그리고 기찻길 배경을 '배경 가져오기'에서 찾아 넣어주세요. 배경으로 추가한 친구들에겐 각각 '깜토' '하트곰' 스크래치'라 이름 붙여준 후 축소 버튼을 눌러 크기를 줄여줍니다.

 

– 기차역으로 가는 길 만들기

 그림판에서 사각형을 그리고 이름을 '출발'이라고 붙여주세요. 그런 다음, '복사하기'로 같은 모양을 추가한 후 그림판의 페인트 기능으로 다른 색을 칠해줍니다. 위 이미지처럼요. 첫 번째 사각형은 '보드판', 두 번째 사각형은 '현재 위치'로 각각 이름 붙일 겁니다

그림판에서 사각형을 그리고 이름을 '출발'이라고 붙여주세요. 그런 다음, '복사하기'로 같은 모양을 추가한 후 그림판의 페인트 기능으로 다른 색을 칠해줍니다. 위 이미지처럼요. 첫 번째 사각형은 '보드판', 두 번째 사각형은 '현재 위치'로 각각 이름 붙일 겁니다.

이제 출발 스프라이트의 블록을 만들어볼까요? 깜토에 닿으면 '보드판' 사각형이 색깔이 다른 '현재 위치' 사각형으로 바뀌도록 설정할게요

이제 출발 스프라이트의 블록을 만들어볼까요? 깜토에 닿으면 '보드판' 사각형이 색깔이 다른 '현재 위치' 사각형으로 바뀌도록 설정할게요. 블록을 모두 만들면 출발 스프라이트를 열 개 더 복사한 후 이름을 '기차역' '길 1' '길 2'…'길 9'로 각각 지어주세요. 블록을 만든 후 스프라이트를 복사하면 블록 내용까지 모두 복사된단 사실, 아직 기억하고 계시죠?

기차역 스프라이트의 기존 보드판 사각형에 'GOAL'이라고 표시한 후 스크립트엔 '기차역 배경 바꾸기'를 방송하는 블록을 추가해주세요

기차역 스프라이트의 기존 보드판 사각형에 'GOAL'이라고 표시한 후 스크립트엔 '기차역 배경 바꾸기'를 방송하는 블록을 추가해주세요<왼쪽 이미지 참조>. 그런 다음, 스프라이트를 무대 왼쪽 위부터 시계 반대 방향으로 배치해주시면 됩니다.

'지금 몇 초'란 이름의 변수도 만들어주세요. 이 변수는 모든 스프라이트에 시간을 알리는 역할을 합니다. 그러니 만들 때 '모든 스프라이트에 대해' 항목에 '∨' 표기해주세요.

 

– 깜토 스크립트 만들기

먼저 깜토가 친구들을 만날 때마다 배경이 바뀌도록 왼쪽 이미지처럼 무대 스크립트를 만들어주세요. 

먼저 깜토가 친구들을 만날 때마다 배경이 바뀌도록 왼쪽 이미지처럼 무대 스크립트를 만들어주세요. 깜토가 정해진 길을 따라가도록 깜토 스크립트도 오른쪽 이미지처럼 구성해주시고요.

1분은 60초이니 반복문 안에 '1초 기다리기'와 '말하기' 블록으로 초시계를 만들면 시간을 확인할 수 있습니다.

깜토가 움직임을 시작하고 마치는 단계를 각각 만들어볼게요. 기차 출발 시각까지 1분이 남아 있는데, 늦지 않으려면 시간이 얼마나 지났는지 알아야겠죠? 1분은 60초이니 반복문 안에 '1초 기다리기'와 '말하기' 블록으로 초시계를 만들면 시간을 확인할 수 있습니다.

 

– 스크래치와 하트곰 스트립트 만들기

다음은 스크래치 블록을 만들 차례인데요. 1번 블록은 깜토가 매초마다 방송하는 '똑딱똑딱'을 받아 초를 재고 있다가 20초가 되면 깜토와 만나서 가도록 만드는 역할을 합니다. 2번 블록은 깜토와 만났을 때 배경이 스크래치 모양으로 바뀌도록 만드는 내용이고요.

다음은 스크래치 블록을 만들 차례인데요. 1번 블록은 깜토가 매초마다 방송하는 '똑딱똑딱'을 받아 초를 재고 있다가 20초가 되면 깜토와 만나서 가도록 만드는 역할을 합니다. 2번 블록은 깜토와 만났을 때 배경이 스크래치 모양으로 바뀌도록 만드는 내용이고요.

3번처럼 하트곰의 블록을 조립하면, 하트곰이 깜토를 만나기 전까지 잠을 자게 됩니다. '무한 반복' 명령을 활용한 건데요. 그러다 깜토를 만나면 잠에서 깨 기차역으로 향하는 거죠.

마지막으로 기차역에 도착했을 때의 동작만 설정하면 모든 과정이 마무리됩니다. 오늘의 프로그래밍은 과연 어떤 모습으로 완성됐을지 궁금하시

마지막으로 기차역에 도착했을 때의 동작만 설정하면 모든 과정이 마무리됩니다. 오늘의 프로그래밍은 과연 어떤 모습으로 완성됐을지 궁금하시죠? 아래 이미지를 통해 확인해보세요!

GIF(빠름)

프로그래밍은 어떤 문제를 작은 부분으로 쪼개서 차례로 풀어가는 과정이라 할 수 있습니다. 나무젓가락 열 묶음을 한 번에 부러뜨리려 하면 어렵지만 한 묶음씩 부러뜨리면 간단히 해결할 수 있는데요. 프로그래밍도 마찬가집니다. 문제를 한꺼번에 해결하려 하지 말고 과정과 단위를 어떻게 나누는 게 효과적일지 생각해보는 게 중요합니다.

스크래치와 친구들의 여행 이야기는 여기서 끝난 게 아니랍니다. 목적지에선 좀 더 즐거운 모험이 기다리고 있는데요. '스크래치와 함께하는…' 시리즈 다음 편도 기대해주세요!

기획·연재

기획·연재 > 테마 기획

삼성전자 뉴스룸의 직접 제작한 기사와 이미지는 누구나 자유롭게 사용하실 수 있습니다.
그러나 삼성전자 뉴스룸이 제공받은 일부 기사와 이미지는 사용에 제한이 있습니다.
<삼성전자 뉴스룸 콘텐츠 이용에 대한 안내 바로가기>

TOP