나만의 번역기 만들기(2)

생각열기

지난주 금요일에 한국어를 영어로 번역해주는 나만의 번역기를 만들었는데요. 문제가 있어요. 이 세상에 한국어와 영어만 있다면 좋겠지만 잘 알다시피 그렇지가 않지요.

선생님이 예전에 여행을 갔을 때는 한 테이블에서 각각의 서로 다른 언어를 하는 4명의 사람과 한 테이블에서 스마트폰을 이용해 대화한 적도 있어요.

그럼 혹시 여러분은 영어 말고 다른 언어를 사용하는 사람들을 만나서 의사소통을 해본 적이 있나요? 이런 상황에서 어떻게 해야 할까요? 아래에 대답해주세요.

활동 1 - 변수 알아보기

오늘 우리의 문제를 해결하기 위하여 지난 시간에 만든 번역기를 살펴볼까요? 오늘의 문제를 해결하기 위해서는 아쉬운 점이 보이네요.

여러분 생각은 어떤가요? 선생님 생각에는 한국어를 영어로만 번역해주는 것이 아쉬운 것 같아요. 세계화 시대에 더 다양한 언어들을 번역해주면 좋을 텐데 말이죠.

그래서! 오늘은 다양한 언어로 번역할 수 있는 번역기를 만들어 보려고 하는데요. 먼저 오늘 번역기의 기능을 추가해주기 전에 변수의 개념에 대해서 알아보고 갑시다.

변수 : 게임을 할 때 그전에 받았던 점수에 새로운 점수가 계속 더해져서 새로운 값이 나옵니다. 이렇게 변하는 수 또는 변하는 값을 넣는 공간을 '변수'라고 부릅니다.

천재학습백과 초등 소프트웨어 용어사전

변수는 생각보다 많은 곳에 쓰이고 있어요. 여러분들이 자주 하는 게임에는 변수가 항상 쓰여요. 게임이 진행되는 시간 표기라든지 변하는 점수라던지 그런 것들은 모두 변수에요. 쉽게 생각해보면 숫자가 변하는 부분은 모두 변수라고 생각하면 좋고요. 나아가 변수는 이러한 값을 담는 ‘그릇’이라고 생각하면 됩니다. 그 ‘그릇’에는 언제든지 다른 숫자를 뺐다, 넣었다. 가능하고요. 단 넣을 수 있는 숫자는 한 개로 제한됩니다.

엔트리에서는 블록조립소 위 메뉴의 ‘속성’ 메뉴에서 변수를 추가해줄 수 있습니다. 변수 이름은 자유롭게 정해도 좋지만, 변수가 많아지면 찾기가 어려워지기 때문에 값과 관련된 이름을 정해주는 것이 좋아요.

게임을 만들 때 점수에 사용되는 변수라면 그 변수의 이름을 ‘사자’라고 하기보단 ‘점수’라고 써 놓는 게 좋겠죠?

활동 2 -변수, 대답 블록 알아보기

변수에 대해 이해가 되었나요? 조금 어려운 개념일 수도 있어서 지금 이해가 안 가는 친구들은 선생님과 함께 차근차근 프로젝트를 수행하면서 알아봅시다. 아래 링크를 클릭해서 엔트리 씨앗 파일을 열어주세요.

질문1 여기서 선생님이 만들어 놓은 변수는 무엇이 있을까요?

(충분히 고민해본 후 정답을 확인해주세요.)

정답: 언어, 번역대상

질문2 선생님이 만들어 놓은 변수가 아니라 엔트리에서 기본적으로 제공하는 변수가 있는데 무엇이 있을까요?

(충분히 고민해본 후 정답을 확인해주세요.)

정답: '대답' 변수

엔트리에서 어떤 것을 묻고 대답 기다리기 블록을 사용하면 대답을 요구해요. 여기서 빈칸에 대답을 치면 그 값은 '대답' 변수에 저장됩니다.

활동 3 - 생활 속에서 칭찬미션을 해결하기

다음 칭찬 미션을 설문지에 해결해보고 직접 나의 친구나 가족에게 문자전송을 해 봅시다.

바로 위 코드를 분석해보면 “번역하고 싶은 말을 입력하세요.”라는 질문에 대한 대답은 “번역대상”이라는 변수에 저장이 되는 것이죠.

활동 3 - 다양한 언어로 번역되는 번역기 만들기

개념들을 모두 학습했으니 2가지 언어로 번역되는 번역기를 만들어 봅시다. 선생님은 영어와 프랑스어로 번역되는 번역기를 만들어 보았는데요 여러분은 다른 언어를 선택해서 만들어 보도록 합시다.

위 순서를 참고하여 활동2에서 제시된 씨앗 파일로 2가지 언어로 번역되는 번역기를 만들어 봅시다.

정리 활동

오늘은 생각보다 어려운 개념이 있어서 힘들어하였을 5학년 친구들이 있었을 수도 있어요. 다만 오늘 배운 개념을 잘 익힌다면 엔트리로 더 다양한 프로그램을 만들 수 있을 거예요. 내일은 간단한 미로 게임을 제작해 볼 거예요. 오늘 배운 내용 들을 꼭 기억하고 내일 이 시간에 만나요.

※ 도움주신 선생님 : 강릉한솔초 이권, 검산초 이새미