본문 바로가기

스크래치/스크래치 팁9

스크래치 레이어 순서 알아내기 스크래치에서 레이어를 다루는 것이 어렵습니다. 지금도 저에게도 해결해야 하는 숙제 중 하나 ㅠㅠ 간만에 하면서 여러가지 규칙을 찾아내었는데, 스크래치 레이어 순서를 알아내는 방법을 찾았습니다. 먼저 고양이와 레이어 순서를 알아낼 3개의 스프라이트를 겹쳐 놓았습니다. 어떤 녀석이 가장 위에 있고 그다음에 있는지 변수로 표시할 수 있습니다. 먼저 고양이를 코딩합니다. 고양이는 자신을 누르면 변수를 0으로 하고 메시지를 방송합니다. 나머지 스프라이트들은 방송을 받으면 변수를 증가시키고 말을 합니다. 이 숫자가 레이어의 순서입니다. 재미있게도 방송하기를 하면 레이어가 가장 앞에 있는 녀석부터 변수를 증가하고 말하기를 합니다. 드디어 스프라이트들의 레이어 순서를 알아내는데 성공하였습니다. 이걸 어떻게 써먹어야 할.. 2021. 2. 17.
2. 행렬에서 소수만 남기기 지난 시간에서 배수를 지웠다면, 이제 숫자들 중에서 자기자신의 수를 제외한 배수들을 지우면서 소수를 남기는 프로젝트를 만들어 봅니다.먼저 배수들을 제거할 때 자기자신이 아닌 숫자의 배수를 지워야 하는데요,여기에 조건으로 '자기자신이 아닐 경우'를 추가해주면 됩니다. 이렇게 하면 만약 '2'를 입력할 경우 2를 제외한 2의 배수들을 리스트에서 모두 삭제합니다. 이제 소수를 남길 차례입니다. 먼저 1을 제외하고 2부터 시작해서 모든 소수들을 차례대로 배수를 지우도록 합니다. 소수들은 1을 제외한 2부터 차례대로 1씩 증가하면서 자신을 제외한 배수를 삭제하고, 그다음으로 넘어가는 식으로 구현하면 됩니다.그러면이런 모양이 나오겠네요! 글로 설명해주자면, 2번째 값(2)부터 배수를 지우고 그 다음에는 3번째 값(.. 2018. 6. 12.
스크래치 팁과 기초 7. 연산블록 추가로 이해하기 연산블록에서의 연산 블록에 대해서 자세히 알아봅니다.▲스크래치에서 제공하는 기본적인 연산 블록 1. 절대값 절대값은 어떤 수의 절대적인 '크기'를 비교하기 위해 사용하는 블록입니다. 예를들면 -2와 1이라는 두개의 숫자를 볼 때 -2는 1보다는 작은 수입니다. 그러나 절대적인 크기로 볼 때는 -2가 1보다 큽니다. 이렇게 음수와 양수를 논외하고 오로지 '크기'만을 비교할 때는 '절대값'을 사용합니다. 이 절대값의 의미는 일종의 '거리'의 값으로 이해할 수 있습니다.▲-2와 1을 볼 때 무엇이 더 멀리 떨어져 있나를 생각할 때는 음수는 고려대상이 아니다. 2. 바닥함수와 천장함수 바닥함수와 천장함수는 소수점을 버리고 정수로 만드는 함수입니다. 여기서 바닥함수는 추어진 실수 이하의 최대 정수를 구하며, 천장.. 2018. 2. 19.
스크래치 팁과 기초 6. 조건문과 반복문 이해하기 개인적으로는 프로그래밍에서 가장 중요한 부분이 조건문과 반복문인거 같습니다. 이 것들을 가장 잘 이해해서 사용하는 사람들이 고수이지 않을까 합니다. 알고리즘을 짜고 어떻게 만들어야 할지 그 뼈대를 만드는 실력이 조건문과 반복문을 어떻게 이해하고 구성하느냐에 달려있는 것 같습니다. 따라서 조건문과 반복문을 잘 사용할 수 있도록 연습을 하는 것도 좋습니다. 1. 조건문▲조건과 조건문 조건문은 '만약 ~이라면'의 조건을 만족할 경우에만 동작하는 구문이 됩니다. 해당 조건이 만족하지 않을 때에는 '아니면'이 붙어있는 블록을 사용합니다. 해당 조건문은 연산탭에 있는 조건들(육각형)을 구성하여 조건 블록 안에 넣어 완성시켜줍니다. ▲조건문의 사용 예, 만약 개가 고양이라면 '야옹'할 것이고, 아니라면 '멍멍'한다... 2018. 2. 9.
스크래치 팁과 기초 5. 연산블록 이해하기 연산블록을 어떻게 언제 사용하는지 알아봅니다. ▲연산에 관련된 블록들 1. 사칙연산과 함수 관련연산에는 여러가지 블록들이 있습니다. 여기서 동그라미와 네모의 빈칸은 변수를 넣을 수 있는 곳입니다. 다시 이 연산들의 결과값이 변수처럼 사용되어 연산을 할 수 있습니다.▲동그란 것들은 다시 연산을 시킬 수 있다. 당연하지만 문자열은 계산이 불가합니다. 문자열을 계산을 요구하였을 경우0이라는 결과값이 나옵니다.▲변수값이 문자열일경우 일반적인 연산은 불가능하다. 0이라는 결과값이 대신한다. ▲리스트 번호대로 자리수를 계산한다. 사칙외 연산은 아래와 같은 연산함수 블록을 골라서 사용합니다. 각각의 함수들은 필요할때 꺼내 사용하면 됩니다.▲연산 함수의 리스트들, 여기에 없는 수학적 함수는 직접 만들어야 한다. 2. .. 2018. 1. 26.
스크래치 팁과 기초 4. 묻고 대답하기 이제 고양이에게 말을 걸어보는 시간입니다. 고양이에게 물어보면 그 물어본 것을 토대로 대답을 하도록 하는 것이 이번 강좌의 목표입니다. 1. 묻기, 대답하기▲묻고 기다리고, 대답한 값을 '대답'변수로 바꾼다. '감지'탭에 보시면 묻기와 대답에 대한 블록들이 있습니다. 이것을 사용해서 고양이가 묻고, 그대로 말하도록 하는 것으로 기초적인 것을 만들어 봅니다. ▲묻고 '대답'을 말하도록 한다. ▲어떤 값을 입력하던지 고양이는 그대로 따라한다. 묻는 말에 입력을 하면 바로 그것을 변수로 사용하여 고양이가 똑같은 말을 반복합니다. 이렇게 원하는 글자나 숫자를 '묻기'를 통해 입력이 가능합니다. 2. 여러번 물어보고 더하기 이제 '변수'의 특징 중 하나인 '저장하기' 능력에 대해서 직접적으로 사용할 차례입니다. .. 2018. 1. 20.
스크래치 팁과 기초 3. 말하기 가장 기본적인 것부터 했어야 했는데 뛰어 넘어가버렸네요. 먼저 말하기를 해봅니다.1. 말하기 블록 이해 ▲말하기 블록은 '형태'탭에 있다. 말하기 탭에서 말하는 종류가 4개가 있습니다. 여기서 말하기와 생각하기는 말풍선의 모양만 다를 뿐 문자를 표시해주는 기능은 같습니다. ~초동안 말하기의 경우 말한 다음 뒤에 ~초 동안 기다리기를 수행한 것과 같습니다. ▲왼쪽과 오른쪽은 같은 결과를 가진다. 2. 말하기 사용 방법 사용 방법은 원하는 위치에 블록을 넣고 실행을 하면 해당 스프라이트에서 원하는 대답을 하도록 설정할 수 있습니다.▲말하기의 쉬운 예제 ▲말하기를 시켰을 때의 결과 미리 지정해둔 변수를 칸 안에 넣을 경우 해당 변수를 말할 수 있도록 정할 수 있습니다.▲변수를 말하기를 넣고 실행▲정해진 변수를.. 2018. 1. 16.
스크래치 팁과 기초 2. 변수의 사용법 이제 스크래치에서 변수들을 사용하는 법에 대해서 알아봅니다. 변수들은 먼저 '스크립트' 탭에서 '데이터'를 보시면 변수를 만들 수 있습니다. 1. 모든 스프라이트에서 사용스크래치에서 변수를 사용하기 위해서 변수를 만들면 2가지 옵션을 거치게 됩니다. 하나는 '모든 스프라이트에서 사용'과 '이 스프라이트에서만 사용'이 있습니다. 이러한 변수들의 특징으로 인해 첫번째의 경우는 '전역변수(Gloval variable)'라고 하고, 두번째의 경우 '지역 변수(Local variable)'라고 합니다. 스크래치에서 변수를 만들면 기본적으로 전역변수로 옵션이 되어 있습니다. 하지만 가능한 한 지역변수로의 사용으로 추천하고 특별한 경우로 다른 스프라이트에서도 변수를 사용해야 할 때만 전역변수로 사용을 권장합니다. 2.. 2018. 1. 15.
스크래치 팁과 기초 1. 변수 개념 스크래치 팁과 기초 카테고리는 기초적이고 기본적인 이야기를 해볼까 합니다. 처음으로 말하고자 하는 주제는 '변수'입니다.프로그래밍을 하는데 저연령이고, 프로그래밍에 대해서도 처음 접한다면 이 '변수'의 개념을 이해하는데 어려울 것 같습니다.교육과정에서도 '방정식' 또는 '함수'의 개념은 중학교 과정 이후에 나오기 때문인데, 이것을 이해하는 수준이 꽤 있다는 것으로 볼 수 있습니다.변수는 크게 2가지의 입장에서 사용한다고 보시면 될 것 같습니다. 1. 입력으로써의 사용 먼저 변수(Variables)는 변하는 수를 말합니다. 그러나 이 변하는 수를 어디에 쓰려고 만든 것일까요? 이것은 어떤 규칙에 있어서 어떤 수를 대입하기 위한 방법입니다.예를들어 쉽게 설명하기 위해 다음과 같은 문제가 있다고 합니다.문제:.. 2018. 1. 10.