Blockly webc 소개
웹에서 기초 프로그래밍을 스스로의 힘으로 배울 수 있는
프로그래밍 학습시스템이다.
이 시스템안에는 실력 향상 문제 세트가 내장되어 있다.
이 들 문제를 모두 풀고 나면 충분한 실력이 생기게 된다.
이 문제를 모두 풀고서 c언어로 같은 문제를 풀어보면
자신도 놀랄 정도로 쉽게 문제를 풀 수 있다는 것을 알게 된다.
webc로 짠 프로그램이 완성된 후 code버튼을 눌러보면
같은 방식으로 동작하는 c언어소스를 구할 수 있다.
따라서 이 Blockly webc로 프로그래밍을 시작하면
빠른 속도로 고통을 적게 받고도 c프로그래밍 실력을 키울
수가 있다. 이 학습시스템안에 내장된 문제를 다 풀수 있는 실력이라면
충분히 c언어 과목에서 A학점을 받을 수 있다. 모두 이 학습시스템으로 프로그래밍실력을 키우기를 희망한다.
시작하기 http://screencast.com/t/ixri5eoW
웹기반의 c언어 학습시스템인 Blockly webc를 만들었습니다.
https://www.amazon.com/clouddrive/share/6wD2NwLSdUXYvzELeSdG1wR4sK02iK0vwuhuflB80zU
위의 파일을 다운받아서 압축을 풀고 바로 사용하실 수 있읍니다.
웹 서버에 파일을 등록하시면 인터넷으로 접속해서 사용할 수 있습니다.
아래 파일은 위의 webc에 내장된 문제들을 볼 수 있는 문서입니다.
https://www.amazon.com/clouddrive/share/SD8hVfEGEiWhYPGrzKkijOUgxXLjIVYlYYUiqx5BzO3
[1] 우선 크롬을 열고서 http://hcilab.cju.ac.kr/blockly/apps/webc/index.html
에 접속하도록 하자. [ ie 도 사용할 수 있다.]
[2] 다음과 같이 블럭을 짜맞추고 돌려보자.
위에 보이는 대로 블럭을 짜맞추고서 Run버튼을 눌러보자. - repeat 블럭은 안쪽에 물려있는 블럭들을 반복해서 실행하는 일을 한다. - print 4 블럭은 수를 4자리로 맞추어 출력해 준다. - printline 블럭은 줄바꿈을 해준다. - random 1 to 100 블럭은 1부터 100사이의 정수를 임의로 뽑아준다.
위의 블럭들을 가지고 각 블럭들의 숫자를 바꾸어 본다든지 하는 방식으로 실험을 해보자.
[3] 다음과 같은 블럭을 만들어서 테스트를 해보자.
- 실행을 시키면 콘솔창에 커서가 반짝거리며 기다리고 있게 된다. 원하는 값을 입력하고서 엔터를 눌러주면 변수 n에 입력된 값이 들어가게 된다.
- set[변수]to[값] 블럭은 [변수]에 값을 넣어 준다. 위에서는 keyboard에서 받은
입력값을 [변수]에 넣어 준다.
변수를 확인하기 위해서는 위와 같이 show all variables 옆의 체크박스를 체크해준다.
실행을 할 때 마다 입력된 값이 n에 들어 가는 것을 확인할 수 있다.
[4] 다음 프로그램을 돌려보자.
- 위의 프로그램을 실행하고서 n의 값[20보다 작은 값]을 넣어 주면 n줄 n칸의 출력이 생긴다.
[5] 다음 프로그램을 돌려보자.
- set x to 0 블럭은 x의 값을 0으로 만들어 준다.
- change x by 1 블럭은 x의 값을 1씩 증가 시켜준다.
- 위의 프로그램을 실행시키면 다음과 같은 출력을 구할 수 있다.
[6] 다음 프로그램을 돌려보자.
- click console 블럭은 이 블럭을 만날 때 console 버튼을 눌러 주어야 다음 블럭으로 이동
한다. 이 블럭을 눌러주면 x의 값이 바뀌고 나서 콘솔에 출력이 되는 것을 확인할 수 있다.
내장된 문제는 Problems를 누르면 블럭을 꺼낼 수 있다.
문제에 대한 자료는
[이곳] 에서 다운받는다.
첫 번째 과제모음과 두 번째 과제모음을 풀 때는
- repeat 블럭,
- print4 블럭,
- printline 블럭,
- print"*" 10 times 블럭,
- 변수블럭(최대 3개: n, x, y) 사용
n은 입력받은 후에는 수정하지 않는다.(줄 수를 나타냄)
[set블럭과 change by블럭]
- 식을 입력할 수 있는 블럭 (Math에 있는 핑크색의 빈블럭)
- clear screen 블럭
등만 사용해서 문제를 풀도록하자.
if 블럭이나 다른 반복 블럭은 사용하지 않는다.
세 번째 과제모음은 2차원 배열을 이용한 문제들이다. - 세번째 과제모음에서 repeat 블럭은 사용하지 않고, for 블럭을 사용한다. - if 블럭이나 if_else 블럭도 사용할 수 있다. - 변수의 갯수는 제한하지 않는다.
네 번째 과제모음은 1차원 배열을 이용한 문제들이다. - 네 번째 과제모음에서는 비로소 while 불럭을 사용한다.
때로는 비슷한 두 사람이 짝을 이루어 문제를 풀어 나가는 것이 좋을 수도 있다. 서로 번갈아 가면서 문제를 푸는 방법을 생각하고 이를 적용해 보는 방식으로 공동으로 아이디어를 모아서 문제를 푸는 것이 꾸준한 공부를 위해서 도움이 된다.
'Blockly webc > Blockly webc' 카테고리의 다른 글
기초가 되는 코드2 (0) | 2016.02.13 |
---|---|
기초가 되는 코드1 (0) | 2016.02.12 |
Blockly webc 관련 질문과 답변 (0) | 2014.11.04 |
웹기반의 c언어 학습시스템인 Blockly webc를 만들었습니다. (0) | 2014.10.23 |