44.개발로먹고사는남편하루/초딩코딩공부

초등학생 코딩기초 : 기초 변수 활용 (Feat. 스크래치)

amymom 2022. 6. 19. 04:50
728x90
반응형

오늘은 저번에 언급했듯이 변수에 대해서 확인을 해보겠다. 

모든 언어에는 변수를 선언하고 그 변수에 값을 넣어서 활용을 하기 마련이다. 코딩에서의 가장 기초적일 것이다.

변수 란?

우리 초등학생 입장에서 설명을 해줘야되는데 어떻게 해야될 지 고민이다.

쉽게 말하면 수학에서 쓰이는 수식에 따라서 변하는 값이라는 뜻이다. 

내가 지정한 이름에 값을 넣어주는 형식이다.

쉽게 말하면 내가 "변수이름" 이라는 이름을 정해두고 이 이름표에 숫자를 지정해 두는 것이다.

"변수이름 = 14" 이것에 의미는 변수이름은 14와 같다라는 말이다. 초등수학에서 배웠을 것이다. 

변수에 대한 자세한 의미는 다음, 네이버, 구글 검색에 검색을 해보도록 하자.

코딩을 잘하려면 검색을 잘해야된다
이 말은 진리이다 .... 

 

일단 간단하게 화면 설명부터 해보겠다. 

블록 입력창에는 우리가 처리해야될 블록을 입력하는 창이다. 그리고 등록된 블록을 실행하는 실행창이 있을 것이다.
블록입력창 : 각각의 이벤트 와 블록을 입력하는 창 
실행창 : 입력된 이벤트 및 블록을 실행하여 확인하는 창

 

오늘 알아볼 부분은 변수이다.. 변수를 어떻게 활용하고 개념을 잡아보는 시간이 될 것이다. 

일단 개발자가 꿈이면 제일 많이 다뤄야 되는 부분이 변수를 정의 하는 부분일 것이다. 오늘은 그 내용에 대해서 알아보겠다.

 

1. 변수를 알아보자

스크래치화면

스크래치 화면에서 변수를 만들기 위해서는 "변수" 탭을 선택한 다음  "변수만들기" 를 클릭한다.

 

2. 새로운 변수 만들기 화면을 설명해보겠다.

새로운변수 만들기 화면

새로운변수 이름 : 내가 사용할 변수의 이름을 지정하는 텍스트 창
모든 스프라이트에서 사용 : 전체 스프라이트에서 사용되는 변수 (참고) 개발 언어에서는 전역변수
이스프라이드에서만 사용 : 현재 스프라이트에서 사용되는 변수 (참고) 개발 언어에서는 지역변수
변수를 만들때는 항상 변수만들기를 클릭하여 계속 등록을 할 수 있다.
변수란 내가 필요한 값을 저장하는 곳이라고 생각하면 되겠다.

 

3. 변수를 만들어 보자

새로운 변수 만들기 화면

이 스프라이트에서만 사용을 선택하여 "정수형" , "실수형" , "문자형" 이름으로 등록을 해보겠다.

 

4. 등록을 하게 되면 아래와 같이 등록이 된다.

스크래치 화면

등록이 되었다면 빨간색 박스를 확인해 보겠다. 정수형 체크박스에 선택이 되면 옆에 스프라이트1 :정수형 0 이렇게 나타나게 된다.

 

5. 아래의 이름을 차례대로 등록을 해보자

스크래치 화면

정수형, 실수형, 문자형 이렇게 등록을 하였다. 스크래치에서는 내가 사용할 변수에 대한 선언이 없어도 되는 것 같다.
(참조) 선언 : 개발언어에서는 내가 사용하는 변수에 대해서 선언이라는 것을 하여 명시적으로 내가 사용할 변수의 형태를 정의한다.
 예를들면)  int a = 1;  (설명) 정수형 으로 선언된 a 라는 변수에 1을 정의하겠다.
                   float b = 1.1; (설명) 실수형으로 선언된 b 라는 변수에 1.1을 정의하겠다.
                   str c = "이름"; (설명) 문자형으로 선언된 c 라는 변수에 이르을 정의하겠다.

 

6. 변수에 값을 넣어주는 블록을 정의하는 화면

스크래치 화면

블록을 클릭하여 옆화면으로 옮겨보자. 여기서 하는 행동은 개발에서 값을 할당한다고 얘기한다.
(참고) 할당 : 변수에 값을 넣어주는 행위를 할당이라고 말한다.

 

7. 일단 블록 3개를 옮겨주고 이전에 만든 변수이름으로 변경

스크래치 화면

블록 3개를 옮겨주고 "나의변수"를 클릭하면 내가 이전에 만들어 놓은 "정수형", "실수형", "문자형"으로 차례데로 바꿔준다.
(참고) : 일반적인 개발언어에서 있는 선언이라는 작업이 없어도 된다. 정수형 int a = 1; 에서 int가 빠진다.

 

8. 선언된 변수로 블록의 이름을 바꿔 준다음 옆에 하얀색 동그라미에 값을 넣어준다.

스크래치 화면

하얀색 동그라미에 0이 기본으로 입력되어 있을 것이다. 
이 값을 다음과 같이 변경 해보겠다. 아래와 같이 변경하였지만 아무 것도 변화가 없을 것이다.
- 문자형 : 나의이름
- 실수형 : 1.5
- 정수형 : 10
(참고) 여기에 하얀색 동그라미 값은 개발에서는 int a = 1; 의 1과 같은 값이다.

 

9. 값을 실행하려면 이벤트를 넣어줘야된다.

스크래치 화면

이벤트 탭을 클릭하고 세번째 블록인 "이 스프라이트를 클릭했을 때"를 선택하여 현재 입력되어 있는 블록 위에 놓아 둔다.

 

10. 이벤트 블록을 입력한 다음 클릭하면.

스크래치 화면

이벤트 블록을 입력하고 클릭을 하게 되면 옆의 실행 화면에서 값이 변하게 된다.

 

여기까지 따라왔다면 기본적인 변수에 대한 개념은 알았을 것이다.
이제 스프라이트 개념을 잡아보자

 

11. 스프라이트 1개를 등록해보자 

스크래치 화면

스크래치에서 스프라이트를 한개 등록해보자 

 

12. 스프라이트 등록

스크래치 화면

음식 탭에서 머핀을 선택해보자 선택을 하게 되면 스프라이트1개가 등록이 될 것이다.

 

13. 스프라이트 등록이 되면 "스프라이트1" 옆에 머핀이 한개 생성

머핀이 등록되고 클릭하게 되면 명령입력창은 깨끗할 것이다. 변수 및 이벤트를 등록한 적이 없어서 이다. 
(참고) 여기서 잠깐 개발자 관점에서 스프라이트는 클래스고 이벤트는 함수 같다. 이 부분은 나중에 설명하겠다. 
지금은 너무 개념잡기가 힘들 것이다.

 

14. 스프라이트 머핀을 등록한 다음 3개의 변수를 등록한다.

스크래치 화면

머핀에도 똑같이 "정수형" , "실수형" , "문자형" 을 변수만들기로 만들어 준다.
이렇게 만 일단 만들어 두자

 

15. 모든 스프라이트에서 사용 하는 변수에 등록

스크래치 화면

이번에는 모든 스프라이트 에서 사용이 가능한 변수를 등록해보겠다. 
(참조) 개발에서는 전역변수를 선호하지는 않지만 전역으로 사용할 때는 사용자가 프로그램 전체에서 사용할 때 선언을 해준다

 

16. 모든 스프라이트에서 사용을 3개 만든다.

스크래치 화면

모든 스프라이트에서 사용하는 "전역정수형" , "전역실수형" , "전역문자형" 3개를 만들어준다. 위에서 와 같이 3개가 등록된 것을 볼 수 있다. 실행창에는 기본값이 0이 출력되어 있다.

 

17. 머핀 스프라이트로 이동하여 머핀에 이벤트와 변수의 값을 등록한다

스크래치 화면

3개의 값에 정의하는 블록을 등록한 다음에 정의를 해준다.
문자형 : 머핀
실수형 : 3.4
정수형 : 20
이렇게 등록하고 이벤트 블록도 등록해준다. 이전에 했던 것과 같다. 잘 모르겠으면 앞을 참조하자 

 

18. 스프라이트 1로 이동하여 변수를 정의하는 블록을 입력

스프라이트1에 정의된 "정수형" , "실수형" , "문자형"  은 머핀 스프라이트에서는 사용할 수 없기 때분에 모든스프라이트에서 사용이 가능한 변수를 정의해 볼 것이다.

 

19. 스프라이트1 에서 변수를 정의하는 블록을 3개 입력한다.

스크래치 화면

블록을 입력한 다음에 "모든 스프라이트에서 사용" 으로 정의한 3개의 변수를 차례데로 입력한다.
전역문자형 : 스프라이트1 에서 변경
전역실수형 : 23.4
전역정수형 : 150

 

20. 머핀 스프라이트로 이동하여 변수정의 블록 3개를 입력

스크래치 화면

머핀 스프라이트에도 변수 정의 블록 3개를 입력한 다음에 
정역문자형 : 머핀에서 변경
전역실수형 : 56.4
전역정수형 : 40

 

21. 각각 스트라이트에서 이벤트 블록을 눌러 보면 다음과 같다.

확인 해보면 "모든 스프라이트에서 사용"(전역변수) 만 변경되는 것을 볼 수 있을 것이다. 

 

22. 간단한 개념 설명

각각의 스프라이트에는 각 스프라이트에서 사용하는 변수가 따로 있고 모든 스프라이트에서 사용하는 변수이다. 간단하게 그림으로 개념을 잡아 보면 위와 같다. 지역변수인 해당 스프라인트에서 사용되는 변수는 다른 스프라이트에서 사용이 제한된다. 하지만 전역변수모든 스프라이트 변수는 사용이 가능한 것이다.

 

오늘도 힘들게 작성해봤다. 어린 학생들이 보는 만큼 그림을 많이 첨부해 보았다.

다음 시간에는 변수와 연산을 결합해서 계산을 해보겠다.

 

728x90
반응형