SlideShare a Scribd company logo
1 of 15
Download to read offline
반복문
코스1
○ 루프에 대해 이해하기
(1) 반복되는 동작들을 루프로 묶었을 때의 효과 인지하기
(2) [동영상] 벌집에서 꽃꿀을 얻거나 꿀을 만드는 과정에서 반복되는 과정들을 반복문으로 설명
○ 주어진 순차문을 루프를 사용하여 간단하게 만들기
(1) 순차문 만들기
(2) 루프를 1, 2, 3개 사용하여 반복 알고리즘 만들기
- 루프를 한 개 사용하여 반복 알고리즘 만들기
• 반복횟수가 미리 지정되어(툴 박스)있는 상황에서 루프 한 개를 사용하여 순차문을 반복문으로 바꾸어 작성하기
• 반복횟수가 미리 지정되어있지 않은 경우 루프 하나 안에 한 개의 방향이동블록을 넣어 알고리즘 작성하기 - (평가)
• 반복횟수가 미리 지정되어있지 않은 경우 루프 하나 안에 두 개의 방향이동블록을 넣어 알고리즘 작성하기
- 루프를 두 개 사용하여 반복 알고리즘 만들기
• 반복횟수가 미리 지정되어(작업 영역)있는 상황에서 루프 두 개를 사용하여 알고리즘 완성하기
• 반복횟수가 미리 지정되어있지 않은 경우 루프 두 개와 하나 또는 두 개의 방향이동블록을 사용하여 알고리즘 작성하기 - (평가)
- 루프 세 개를 사용하여 반복 알고리즘 만들기(반복횟수가 미리 지정되어있지 않음)
- 순차문을 하나의 루프 안에 한 개 또는 두 개의 방향 이동블록을 넣어 반복문으로 올바르게 바꾼 것을 선택하기(평가)[선다형]
(3) 루프를 1, 2, 3개 사용하여 꽃꿀을 얻고 꿀을 만드는 반복 알고리즘 만들기
- 루프를 한 개 사용하여 반복 알고리즘 만들기
• 루프 안에 한 개의 방향이동블록을 넣어 알고리즘 작성하기
• 루프 안에 네 개의 방향이동블록을 넣어 알고리즘 작성하기 - (평가)
- 루프를 두 개 사용하여 반복 알고리즘 만들기(루프 안에 꽃꿀 얻기나 꿀 만들기 등의 다양한 블록 포함)
• 루프 안에 세 개의 블록을 넣어 알고리즘 작성하기 - (평가)
• 루프 안에 네 개의 블록을 넣어 알고리즘 작성하기
• (이동할 수 있는 공간이 확장되었을 때) 루프 안에 각각 두 개의 블록을 넣어 알고리즘 작성하기
- 루프를 세 개 사용하여 반복 알고리즘 만들기(루프 안에 꽃꿀 얻기나 꿀 만들기 등의 다양한 블록 포함)
• 루프 안에 한 개의 블록을 넣어 알고리즘 작성하기
• 루프 안에 두 개의 블록을 넣어 알고리즘 작성하기
• 루프 안에 네 개의 블록을 넣어 알고리즘 작성하기
- 루프를 네 개 사용하여 반복 알고리즘 만들기(루프 안에 꽃꿀 얻기나 꿀 만들기 등의 다양한 블록 포함)
- 각 반복 알고리즘과 순차문 알고리즘을 알맞게 짝지어 맞추기(평가)[맞추기]
(4) 루프를 1, 2개 사용하여 그림을 그리는 반복 알고리즘 만들기
- 루프 한 개 사용하여 반복 알고리즘 만들기
• 루프 안에 한 개의 방향이동블록을 넣어 알고리즘 작성하기(반복해야할 횟수 주어지지 않음)
• 루프 안에 두 개의 방향이동블록을 넣어 알고리즘 완성하기(반복 블록이 주어짐)
• 루프 안에 두 개의 방향이동블록을 넣어 알고리즘 완성하기(순차문에 반복 블록 씌우기)(평가)
• 루프 안에 세 개의 방향이동블록을 넣어 알고리즘 작성하기(반복해야할 횟수 주어지지 않음)
• 루프 안에 네 개의 방향이동블록을 넣어 알고리즘 완성하기(순차문에 반복 블록 씌우기)
• 루프 안에 방향이동블록과 점프이동블록을 넣어 알고리즘 완성하기(순차문에 반복 블록 씌우기)
- 루프 두 개 사용하여 반복 알고리즘 만들기
• 루프 안에 각각 두 개의 방향이동블록을 넣어 알고리즘 완성하기(반복 블록이 주어짐)
• 루프 안에 각각 방향이동블록과 점프이동블록 한 개씩을 넣어 알고리즘 완성하기(반복 블록이 주어짐)
• 방향이동블록 4종류, 방향점프블록 4종류, 색설정블록에 루프 블록을 추가하여 자유그림을 그리는 알고리즘 표현
코스2
○ 루프에 대해 이해하기
(1) 일상생활에서 반복구조를 사용하는 예시 설명하기(UN)
- 제시된 알고리즘을 반복문을 사용한 알고리즘으로 바르게 바꾼 것을 선택하기[선다형]
○ 루프를 사용하여 다양한 알고리즘 표현하기
(1) 반복문을 사용하지 않고 순차문 알고리즘으로 표현하기
(2) [동영상] 반복문(루프)의 개념과 반복 블록을 사용하는 방법 설명
예술가 프로그램에서 실제로 반복 블록을 사용하는 방법 설명
꿀벌 프로그램에서 실제로 반복 블록을 사용하여 문제를 해결하는 모습 제시
(3) 반복 블록(루프)이 사용된 알고리즘 만들기
Code.org 영역별 분석 자료
작성자 : 정영식, 서진화, 안형진, 안신영(전주교육대학교 컴퓨터교육과)
- 반복 블록을 1, 2번 사용하여 반복 알고리즘 만들기
• 앞으로 다섯 번 이동을 루프를 사용하여 표현하기
• 앞으로 이동의 반복을 루프를 한 번 사용하여 표현하고 방향 회전하기
• 앞으로 이동의 반복을 루프를 두 번 사용하여 표현하고 방향 회전하기
• 루프 안에 앞으로 이동과 한 번의 방향 회전을 포함시켜 알고리즘 작성하기 - (평가)
• 루프 안에 앞으로 이동과 두 번의 방향 회전을 포함시켜 알고리즘 작성하기
• 이동해야 할 경로에 알맞은 반복문 알고리즘 선택하기(평가)[선다형]
• 반복문이 포함된 알고리즘들 중 화면의 경로에 알맞은 것끼리 맞추기(평가)[맞추기]
- 반복 블록을 여러 번 사용하여 반복 알고리즘을 만들고 반복 블록을 중첩하여 사용할 수 있음을 이해하기
(4) 반복 블록(루프)이 사용된 알고리즘을 만들어 그림 그리기
- 반복 블록을 이용하여 기초 그림 그리기
• 주어진 블록들에 루프를 씌워 정사각형을 그리는 알고리즘 완성하기
• 주어진 블록들에 루프를 씌워 선 8개를 그리기 위한 알고리즘 완성하기
• 주어진 블록들에 루프를 씌워 오른쪽으로 1°씩 회전하며 원을 그리기 위한 알고리즘 완성하기
• 원 내부를 색칠하기 위한 알고리즘의 반복횟수 설정하기
• 루프를 사용하여 정팔각형을 그리기 위한 알고리즘 작성하기
- 반복 블록을 이용하여 V자 그리기
• 거리이동블록과 각도선택블록으로 V자 그리기 위한 알고리즘 작성하기(팝업창에 이동 거리 힌트 제시)
• V자를 8번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기)
• V자를 24번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기와 각도선택블록 추가하기)
- 반복 블록을 이용하여 마름모 그리기
• 반복문 사용하여 마름모 그리기 위한 알고리즘 작성하기(팝업창에 이동 거리 힌트 제시)
• V자를 3번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기)
• V자를 10번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기와 각도선택블록 추가하기)
• 거리이동블록, 거리점프블록, 각도선택블록, 펜 두께 설정, 색 설정, 반복 블록을 사용하여 자유 그림 그리는 알고리즘 표현
• 여러 다각형을 그리기 위한 적절한 반복 알고리즘 맞추기(평가)[맞추기]
• 제시된 알고리즘으로 그릴 수 있는 그림 선택하기(평가)[선다형]
• 반복문을 사용한 알고리즘을 보고 그릴 수 있는 그림 선택하기(평가)[선다형]
(5) 반복 블록(루프)을 사용하여 꽃꿀을 얻고 꿀을 만드는 알고리즘 만들기
- 루프를 사용하거나 추가하여 여러 번 꽃꿀을 얻고 꿀을 만들기
• 앞으로 이동 후 꽃꿀 1개 얻기를 2번 반복하는 것을 루프를 사용하여 표현하기
• 루프를 사용하여 ‘꽃꿀 얻기’를 4번 반복하는 알고리즘 작성하기
• 루프를 사용하여 ‘꽃꿀 얻기’와 ‘꿀 만들기’를 4번 반복하는 알고리즘 작성하기
• 방향회전블록이 포함된 알고리즘에 루프 추가하기
• 방향회전블록이 포함된 알고리즘에 루프를 추가한 후 꿀을 3개 만들기 위한 루프 추가하기
- 루프가 포함된 알고리즘을 작성하여 꽃꿀을 얻고 꿀을 만들기
• 꽃꿀 1개 얻기(방향회전블록 포함)
• 꽃꿀 1개 얻고 꿀 1개 만들기
• 꽃꿀 2개 얻고 꿀 2개 만들기
• 꽃꿀 1개 얻고 꿀 1개 만들기(방향회전블록 포함)
• 루프를 사용하여 앞으로 이동 후 꽃꿀을 2번 얻는 알고리즘 작성하기(평가)
• 꽃꿀을 1개씩 3번 얻기 위한 올바른 알고리즘 선택하기(평가)[선다형]
코스3
○ 여러 가지 반복구조를 사용하여 다양한 알고리즘 표현하기
(1) [동영상] 미로퍼즐 프로그램의 기본적인 방법과 반복 블록의 사용 제시
(2) 여러 가지 종류의 반복 블록(루프)이 사용된 알고리즘 만들기
- 반복 블록을 여러 번 사용하여 알고리즘 작성하기(반복횟수 직접 입력)
• 루프 한 개 안에 앞으로 이동 블록이 1개 들어있는 알고리즘 작성하기
• 루프 한 개 안에 앞으로 이동 블록이나 방향 회전 블록이 3개 들어있는 알고리즘 작성하기
• 루프 두 개를 사용하여 알고리즘 작성하기
• 루프 세 개를 사용하여 알고리즘 작성하기
• 루프 다섯 개를 사용하여 알고리즘 작성하기
○ ‘~할 때까지 반복’ 블록을 사용하여 알고리즘 작성하기
• Until 루프 안에 앞으로 이동 블록과 방향 회전 블록을 넣어 알고리즘 작성하기 - (평가)
• Until 루프 안에 세 개의 블록을 넣어 알고리즘 작성하기
• Until 루프 안에 네 개의 블록을 넣어 알고리즘 작성하기 - (평가)
• 순차문, 반복구조 등 미로에 맞는 알고리즘 맞추기(평가)[맞추기]
• 미로에 알맞은 알고리즘 선택하기(루프 두 개 사용)(평가)[선다형]
(3) 여러 상황이나 조건에서 반복 블록(루프)를 사용하여 표현한 알고리즘으로 그림 그리기
- 작업영역에 반복될 블록이 주어졌을 때 루프를 사용하여 반복횟수 지정하기
• 반복될 블록에 루프가 없는 경우 알고리즘 표현하기
• 반복될 블록에 루프가 있는 경우 (거리이동블록 추가하고) 알고리즘 표현하기
- 작업영역에 힌트가 주어지지 않을 경우 툴 박스에 지정된 힌트를 보고 알고리즘 작성하기
• 둘레의 길이를 통해 이동해야 할 거리를 유추하여 알고리즘 표현하기
- 작업영역에 반복될 블록이 주어지고 반복될 횟수도 지정되어 있을 때 회전방향과 각도 정하기
- 작업영역이나 툴 박스에 힌트가 주어지지 않을 때 알고리즘 표현하기(팝업창에 이동할 거리에 대한 힌트가 주어짐) - (평가)
- 팝업 창에 길이가 주어졌을 때 루프 안에 점프 이동 블록 사용하여 알고리즘 표현하기
• 주어진 조건에 맞는 알고리즘 선택하기(평가)[선다형]
• 대칭인 모양 선택하기(평가)[선다형]
• 거리이동블록, 거리점프블록, 각도선택블록, 펜 두께 설정, 색 설정, 펜 올리기, 반복 블록을 사용하여 자유그림 그리는 알고리즘 표
현
(4) if 조건 블록을 포함한 Until 반복 블록의 이해(S8)
• Until 반복 블록(1개) 안에 if 조건 블록(1개)이 주어지고 if 조건 블록의 실행 값에 방향회전블록(1개)을 추가하는 알고리즘 표현
• if 조건 블록(1개)을 포함하는 Until 반복 블록(1개)을 사용하는 알고리즘 표현(그 외 전진블록(1개) 사용)
• if/else 조건 블록(1개)을 포함하는 Until 반복 블록(1개)이 주어지고 if/else 조건 블록의 if 실행 값에 전진블록(1개)를 추가하고 else
실행 값에 방향회전블록(1개)를 추가하는 알고리즘 표현
• if/else 조건 블록(1개)을 포함하는 Until 반복 블록(1개)을 사용하는 알고리즘 표현(그 외 전진블록(1개), 방향회전블록(1개) 사용)
• Until 반복 블록(1개) 안에 if 조건 블록(2개)이 2중으로 중첩되어 주어지고 if/else 조건 블록의 if 실행 값에 방향회전블록(1개), 전
진블록(1개)을 else 실행 값에 방향회전블록(1개)을 추가하는 알고리즘 표현
○ 중첩 반복과 While 반복문 이해하고 사용하기
(1) 반복 블록을 중첩하여 작성한 프로그램으로 규칙이 있는 복잡한 그림 그리기
- 반복문이 있는 주어진 알고리즘에 반복 블록을 씌워 중첩 반복문 만들어보기
• 팝업창에 반복할 횟수에 대한 힌트가 주어지는 경우
- [동영상] 중첩 반복문의 개념과 블록 사용방법 설명
• 반복할 횟수에 대한 힌트가 주어지지 않는 경우
- 반복문이 있는 주어진 알고리즘에 각도 변경 블록을 추가한 후 반복 블록을 씌워 중첩 반복문 만들기
• 반복할 횟수와 각도에 대한 힌트가 없는 경우 - (평가)
• 팝업창에 반복할 횟수와 각도에 대한 힌트를 제시하는 경우
- 반복문이 있는 주어진 알고리즘에 거리 이동 블록을 추가한 후 반복 블록을 씌워 중첩 반복문 만들기
• 반복할 횟수와 이동거리에 대한 힌트가 없는 경우
• 팝업창에 반복할 횟수와 이동거리에 대한 힌트를 제시하는 경우
- 반복문이 있는 주어진 알고리즘에 각도 변경 블록과 거리 이동 블록을 추가하여 루프에 넣기(반복 횟수와 거리, 각도에 대한 힌
트 없음)
• 주어진 그림에 알맞은 (중첩반복이 사용된)알고리즘 선택하기(평가)[선다형]
(2) While 반복 블록을 사용하여 작성한 알고리즘으로 문제 해결하기
- 순차문을 사용하여 알고리즘 작성하기
- 반복문을 사용하여 알고리즘 작성하기
- [동영상] 세차 과정을 예시로 While 루프에 대한 설명
- 반복할 행동(구덩이 매우기와 흙더미 치우기)을 몇 번 실행해야하는지 제시되었을 때 루프와 While 루프를 사용하여 알고리즘
작성하기
- 매울 구덩이 수가 주어지지 않았을 때 루프와 while 루프를 사용하여 구덩이를 매우기 위한 알고리즘 작성하기
• 구덩이 한 개 매우기
• 구덩이 두 개 매우기(루프 안에 while 루프 넣기)
- 치울 흙더미 수가 주어지지 않았을 때 루프와 while 루프를 사용하여 흙더미를 치우기 위한 알고리즘 작성하기
• 흙더미 한 개 치우기
• 흙더미 세 개 치우기(루프 안에 while 루프 넣기)
- 반복할 행동(구덩이 매우기와 흙더미 치우기)을 몇 번 실행해야하는지 주어지지 않았을 때 while 루프 두 개를 사용하여 알고리
즘 작성하기
• 반복할 횟수가 주어지지 않는 경우와 제시되는 경우가 혼합되어 있을 때 루프 안에 while 루프를 두 개 넣어 알고리즘 작성하기(평
가)
(3) 중첩 반복문과 while 반복문을 사용하여 작성한 알고리즘으로 문제 해결하기
- 반복문을 사용하여 알고리즘 작성하기
- [동영상] 꿀벌 프로그램에서 중첩 반복문을 사용하는 방법 제시
- 루프 안에 한 개의 루프를 넣어 알고리즘 만들기
• 알고리즘 작성하기
• 주어진 알고리즘에 루프를 사용하여 반복횟수 지정하기
• 두 개의 루프가 있을 때 그 중 하나의 루프 안에 루프 넣어 알고리즘 작성하기
- 루프 안에 두 개의 루프를 넣어 알고리즘 만들기 - (평가)
- 루프와 while 루프를 사용하여 알고리즘 만들기
• 알고리즘 작성하기
• 주어진 알고리즘에 루프를 사용하여 반복횟수 지정하기
• 루프 안에 while 루프가 한 개 들어있는 경우 - (평가)
• 중첩된 루프 안에 while 루프가 한 개 들어있는 경우
• 주어진 미로에 알맞은 알고리즘 선택하기(하나의 루프 안에 while 루프 한 개와 루프 한 개)(평가)[선다형]
○ 반복구조와 패턴을 파악하고 반복문으로 나타내기
(1) 정사각형 반복구조(패턴)를 반복문 알고리즘으로 표현하기
• 주어진 루프 안에 들어갈 블록 지정하기(작업영역에 반복횟수 고정, 팝업창에 이동 거리 힌트로 제시)
• 주어진 반복 알고리즘에 거리이동블록 추가 후 루프 안에 넣기(중첩)
• 주어진 알고리즘에 툴 박스의 보기 블록 모음들 중 적절한 블록 모음을 선택하여 루프 안에 추가하기(두 번 중첩)
(2) 마름모 반복구조(패턴)를 반복문 알고리즘으로 표현하기
• 주어진 루프 안에 들어갈 블록 지정하기(작업영역에 반복횟수에 대한 힌트가 주어지나 고정되어 있지는 않음, 팝업창에 이동 거리
힌트로 제시)
• 주어진 반복 알고리즘에 각도변경블록 추가 후 루프 안에 넣기(중첩)
• 주어진 알고리즘을 루프 안에 넣고 반복 횟수 설정하기(두 번 중첩)
• 전 단계의 알고리즘을 수정하여 복잡한 그림 그리기(하나의 수정 사항에 대해 알려주고 뒤의 블록을 수정하도록)(두 번 중첩)
(3) 육각형 반복구조(패턴)를 반복문 알고리즘으로 표현하기
• 이동 거리와 각도에 대한 힌트가 제시될 때 루프를 사용하여 알고리즘 작성하기
• 주어진 반복 알고리즘에 거리점프블록 추가 후 루프 안에 넣기(중첩)
• 주어진 알고리즘을 루프 안에 넣고 반복 횟수 설정하기(두 번 중첩)
• 주어진 반복 알고리즘에 거리이동블록 추가 후 루프로 묶고 반복횟수 설정하기(반복횟수와 이동거리 힌트로 제시)(세 번 중첩)
(4) 원 일부 반복구조(패턴)를 반복문 알고리즘으로 표현하기
• 주어진 알고리즘을 루프 안에 넣고 반복 횟수 설정하기(회전 각도에 대한 힌트 제시)
• 주어진 반복 알고리즘에서 회전 방향을 반대로 변경한 반복 알고리즘을 추가한 후 루프로 묶기(중첩)
• 주어진 알고리즘에 툴 박스의 보기 블록 모음들 중 적절한 블록 모음을 선택하여 루프 안에 추가하기(다중 중첩)
• 거리이동블록, 거리점프블록, 각도입력블록, 펜 두께 설정, 색 설정, 반복 블록을 사용하여 자유 그림 그리는 알고리즘 표현(자유 시
간)
코스4
○ 반복구조에 대한 이해와 반복 블록 사용하기
(1) 순차문, 반복문, 조건문 복습
- [동영상] 반복문(루프)의 개념과 반복 블록을 사용하는 방법 설명(코스2와 동일)
- 반복문을 1번 사용하여 알고리즘 작성하기
• 방향 회전 블록을 사용하지 않는 경우
• 루프 안에 방향 회전 블록을 사용하는 경우
- 반복문을 2번 사용하여 알고리즘 작성하기(루프 사이에 방향 회전 블록 넣기)
(2) 반복문, 중첩 반복문을 사용하여 알고리즘을 만들고 다양한 모양의 그림 그리기
- [동영상] 순차문과 반복문을 사용하여 다양한 모양의 그림을 그리는 방법 제시
- 반복문을 사용하여 정사각형 그리기
• 팝업창으로 이동거리에 대한 힌트가 주어졌을 때 알고리즘 작성하기
• 주어진 알고리즘을 루프로 묶기(정사각형 내부에 그림 있음)
- 주어진 알고리즘을 루프로 묶어 선 또는 삼각형 그리기
• 8개의 선 그리기
• 10개의 삼각형 그리기
• 12개의 삼각형 그리기
• 삼각형 세 개를 그리기 위해 주어진 반복 알고리즘에 거리 점프 블록을 추가한 후 루프로 묶기
- 원의 내부를 색칠하기 위해 반복문의 반복 횟수 설정하기
- [동영상] 중첩 반복문의 개념과 블록 사용 방법 설명(코스3과 동일)
• 중첩 반복문의 반복 횟수와 각도 선택 블록의 각도 설정하기
• 10개의 평행사변형을 그리기 위하여 각도 선택 블록을 추가한 후 루프로 묶기
• 제시된 프로그램(반복문 두 개 포함)을 실행하여 그려지는 그림을 확인하고 이에 추가하여 원하는 그림 그리기(인쇄 및 공유 가능)
• 앞으로 점프 후 중첩 반복문을 사용하여 알고리즘 작성하기
• 두 개의 반복문을 포함하는 중첩 반복문 만들기
• 거리이동블록, 거리점프블록, 각도입력블록, 펜 두께 설정, 색 설정, 반복 블록을 사용하여 자유 그림 그리는 알고리즘 표현(자유 시
간)
○ For 반복문에 대한 이해와 여러 프로그램에 적용하기
(1) For 반복문의 초기값, 완료값, 사이값에 대한 설명(UN)
(2) For 반복문의 변수 값을 설정하고 알고리즘 작성하기
- For 반복문을 사용하지 않고 반복문만으로 알고리즘 만들기
• 앞으로 한 칸 이동 후 꽃꿀 얻기를 다섯 번 반복
• 앞으로 한 칸 이동 후 꽃꿀을 1개~5개 얻는 프로그램에서 꽃꿀 다섯 번 얻기를 추가
- [동영상] For 반복문의 초기값, 완료값, 사이값의 개념 설명
- For 반복 블록에서 초기값, 완료값, 사이값을 설정하고 이를 사용하여 알고리즘 작성하기
• For 반복문이 사용된 알고리즘을 실행해보며 이해하기
• For 반복문의 완료값 설정하기
• For 반복문의 초기값과 완료값을 설정하고 사이값 수정하기
• For 반복문의 사이값 설정하기
• For 반복문의 사이값을 설정하고 변수를 사용하여 알고리즘 완성하기
• For 반복문의 초기값, 완료값, 사이값을 설정하고 변수를 사용하여 알고리즘 완성하기
• For 반복문의 변수 값을 설정하고 이를 사용하여 알고리즘 작성하기
(3) For 반복문과 변수를 사용한 알고리즘을 작성하고 다각형 또는 원이나 미로 모양 그리기
- 삼각형 확장해가며 그리기
• 반복문을 사용하여 알고리즘 작성
• For 반복문이 사용된 알고리즘을 실행해보며 이해하기
• For 반복문의 초기값, 완료값, 사이값 수정하기
- For 반복문으로 값이 설정된 변수 블록 사용하기
• 사각형 확장해가며 그리기
• 원 확장해가며 그리기
- 미로 모양 그리기
• For 반복문 안에 루프 제거하여 미로를 그리는 알고리즘 완성하기
• For 반복문으로 값이 설정된 변수 블록을 사용하고 회전각도 설정하기
• For 반복문의 초기값, 완료값, 사이값 설정하기
- For 반복문의 초기값, 완료값, 사이값 설정하고 그 변수 블록 사용하기
• 변수 블록 넣기
• 알고리즘 완성하기
• 알고리즘 작성하기
(4) For 반복문과 변수, 그리고 수학문(연산자)를 사용하여 알고리즘을 표현하여 실행시키기
- For 반복 블록으로 값이 설정된 변수 블록 사용하기
- For 반복 블록의 사이값을 설정하고 변수가 포함된 블록 추가하기
- For 반복문과 변수를 사용하여 캐릭터가 숫자를 말하는 프로그램 만들기
• 1부터 100까지 1씩 더하며 말하기
• 10부터 1000까지 10씩 더하며 말하기
• 1부터 10까지의 제곱수 말하기
• 1부터 10까지의 세제곱수 말하기
- 행동(Actions), 반복문(Loops), 수학문(Math), 변수(Variables), 논리문(Logic) 블록들을 사용하여 원하는 게임 만들기
순차문
코스1
○ 순차적 명령구조를 이해하고 간단한 선형 알고리즘 표현하고 명령의 결과 확인하기
(1) 방향이동블록의 이해
- 목적지에 도착하는 선형 알고리즘 표현(S4 미로퍼즐)
• 미로퍼즐 이해하기(동영상)
• 방향이동블록(왼쪽/오른쪽/아래쪽/위쪽) 1종류(2개/3개(방향힌트 미제시)를 사용하여 목적지에 도착하는 알고리즘 표현
• 방향이동블록 2종류(2개/3개)를 사용하여 목적지에 도착하는 알고리즘 표현
• 방향이동블록 3종류(3개/7개)를 사용하여 목적지에 도착하는 알고리즘 표현
(2) 아이템획득 및 명령 블록의 이해
- 이동하면서 새로운 명령(꽃꿀 아이템 가져오기, 꿀 만들기)을 실행하는 선형 알고리즘 표현(S7 꿀벌퍼즐)
• 꿀 만들기 퍼즐 이해하기(동영상)
• 아이템획득 블록 1개와 만들기 명령 블록 1개를 사용하는 알고리즘 표현 : 방향 블록 1종류, 2종류 사용
• 아이템획득 블록 2개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 3종류, 2종류 사용
• 아이템획득 블록 3개와 만들기 명령 블록 3개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용
• 아이템획득 블록 3개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용
• 확장된 맵 제시 후 아이템획득 블록 2개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 2종류 사용
• 아이템획득 블록 3개와 만들기 명령 블록 1개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용
• 아이템획득 블록 3개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 2종류 사용
• 변형 맵 제시 후 아이템획득 블록 3개와 만들기 명령 블록 1개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용
(3) 방향이동블록과 방향점프블록의 이해
- 그림(점점 복잡성 상승)의 일부분을 그리는 명령(방향 이동하며 그리기, 점프하기)을 실행하는 선형 알고리즘 표현(S8, S10 예술
가)
• 예술가 프로그램의 구성요소 이해하기(동영상)
• 방향이동블록 1종류(1개/2개)를 사용하여 선을 그리는 알고리즘 표현
• 방향이동블록 2종류(4개)를 사용하여 선을 그리는 알고리즘 표현
• 방향이동블록 3종류(4개)를 사용하여 선을 그리는 알고리즘 표현
• 미완성 꽃 그림 제시 후 방향이동블록 1종류(2개)를 사용하여 선을 그리는 알고리즘 표현
• 방향이동블록 1종류(4개), 방향점프블록 1종류(1개)를 사용하여 선을 그리는 알고리즘 표현
• 방향이동블록 1종류(4개), 방향점프블록 1종류(3개)를 사용하여 선을 그리는 알고리즘 표현
• 방향이동블록 2종류(4개), 방향점프블록 2종류(3개)를 사용하여 선을 그리는 알고리즘 표현
• 방향이동블록 4종류(8개)를 사용하여 정사각형을 그리는 알고리즘 표현
• 방향점프블록 1종류(1개), 방향이동블록 4종류(8개)을 사용하여 정사각형을 그리는 알고리즘 표현
• 방향이동블록 4종류(8개)를 사용하여 정사각형을 그리는 알고리즘 표현
• 방향이동블록 4종류(6개)를 사용하여 직사각형을 그리는 알고리즘 표현
• 방향이동블록 4종류(8개)를 사용하여 정사각형 2개를 그리는 알고리즘 표현
• 방향이동블록 4종류(8개)를 사용하여 긴 직사각형을 그리는 알고리즘 표현
• 방향이동블록과 방향점프블록을 사용하여 직사각형을 그리는 알고리즘 작성하기
• 방향점프블록 1종류(1개), 방향이동블록 4종류(4개)을 사용하여 정사각형을 그리는 알고리즘 표현
• 닮은꼴 관계의 그림이 동일한 알고리즘으로 표현됨을 이해하기(평가)
• 방향이동블록 4종류, 방향점프블록 4종류, 색설정블록을 사용하여 자유그림을 그리는 알고리즘 표현
(4) 방향이동블록의 이해
- 이동하면서 새로운 명령(알파벳 모으기)을 실행하는 선형 알고리즘 표현(S11)
• 알파벳 모으기 퍼즐 이해하기(동영상)
• 방향이동블록 1종류(4개/5개)를 사용하여 단어를 완성하는 알고리즘 표현
• 방향이동블록 2종류(4개)를 사용하여 단어를 완성하는 알고리즘 표현
• 방향 힌트 없이 방향이동블록 2종류(4개/5개)를 사용하여 단어를 완성하는 알고리즘 표현
코스2
(5) 전진블록과 회전블록의 이해
- 목적지에 도착하는 선형 알고리즘 표현(S3 미로퍼즐)
• 미로퍼즐 이해하기(동영상)
• 전진블록(2개/3개)을 사용하여 목적지에 도착하는 알고리즘 표현
• 전진블록(3개), 오른쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현
• 전진블록(3개), 오른쪽 회전블록(1개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현
• 전진블록(5개), 오른쪽 회전블록(1개), 왼쪽 회전블록(2개)을 사용하여 목적지에 도착하는 알고리즘 표현
• 전진블록(8개), 오른쪽 회전블록(2개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현
• 전진블록(7개), 오른쪽 회전블록(1개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현
• 전진블록(3개), 오른쪽 회전블록(2개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현
• 전진블록(12개), 오른쪽 회전블록(4개), 왼쪽 회전블록(2개)을 사용하여 목적지에 도착하는 알고리즘 표현
(6) 거리이동블록(방향, 이동거리 조절), 각도회전블록(방향, 회전각도 조절), 점프블록(방향, 점프거리 조절)의 이해
- 그림(점점 복잡성 상승)의 일부분을 그리는 명령(일정거리 이동하기, 일정각도 회전하기)을 실행하는 선형 알고리즘 표현(S4 예술
가)
• 거리이동블록 1종류(2개), 각도회전(90도)블록 1종류(1개)를 사용하여 정사각형 일부를 그리는 알고리즘 표현
• 거리이동블록 1종류(1개), 각도회전(90도)블록 1종류(1개)를 사용하여 정사각형 일부를 그리는 알고리즘 표현
• 거리이동블록 2종류(3개), 각도회전(90도)블록 2종류(3개)를 사용하여 직사각형 일부를 그리는 알고리즘 표현
• 거리이동블록 1종류(4개), 각도회전(90도)블록 1종류(1개), 점프블록 1종류(3개)를 사용하여 떨어진 선분 4개를 그리는 알고리즘 표현
• 거리이동블록 1종류(4개), 각도회전(90도)블록 1종류(4개)를 사용하여 정사각형 전체를 그리는 알고리즘 표현
• 거리이동블록 1종류(3개), 각도회전(120도)블록 1종류(2개)를 사용하여 정삼각형 전체를 그리는 알고리즘 표현
• 거리이동블록 1종류(4개), 각도회전(45도, 90도)블록 2종류(4개)를 사용하여 기울여진 정사각형 전체를 그리는 알고리즘 표현
• 거리이동블록 1종류(6개), 각도회전(90도)블록 1종류(5개)를 사용하여 연결된 2개의 정사각형을 그리는 알고리즘 표현
• 거리이동블록 2종류(6개), 각도회전(90도)블록 1종류(5개)를 사용하여 연결된 2개의 정사각형을 그리는 알고리즘 표현
• 거리이동블록, 각도회전블록, 점프블록, 펜 두께 설정 블록, 반복블록, 색 설정블록을 사용하여 자유그림을 그리는 알고리즘 표현
코스3 코스 1과 2에 포함
코스4 코스 1과 2에 포함
조건문
코스2
○ 특정한 조건 아래에서만 실행되는 진술문인 조건문을 이해하고 조건문 알고리즘 표현하기
(1) 실제 상황에서 if/else 조건의 이해(S12)
• 카드의 색이나 숫자 등의 조건에 따라 점수를 얻거나 잃는 카드놀이의 알고리즘을 작성하고 이를 if/else조건문으로 바꾸어보기(UN)
• if/else 조건문을 보고 결과값을 예측해보기(평가)
(2) if조건문 블록의 이해(S13)
• 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 알 수 없을 때 if조건문 블록을 사용하는 방법을 이해하기(동영상)
• 꿀 만들기 퍼즐에서 주어진 if조건문 블록(1개)의 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 추가하는 알고리즘 표현
• 꿀 만들기 퍼즐에서 전진블록(1개), if조건문 블록(1개)을 사용하는 알고리즘 표현
• 꿀 만들기 퍼즐에서 전진블록(3개), 방향회전블록(1개), if조건문 블록(2개)을 사용하는 알고리즘 표현
• 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 알 수 있을 때 아이템(꽃꿀) 획득 블록(1개)을 사용하고, 주어진 조건(꽃꿀의 개수)
을 알 수 없을 때 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)을 사용하는 알고리즘 표현(그 외 전진블록(4개),
방향회전블록(1개) 사용)
• 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 알 수 있을 때 아이템(꽃꿀) 획득 블록(1개)를 포함한 반복블럭(1개)을 사용하고,
주어진 조건(꽃꿀의 개수)을 알 수 없을 때 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)을 사용하는 알고리즘
표현(그 외 전진블록(3개), 방향회전블록(1개) 사용)
• 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(3개)을 사용하고, 전진블록(1개)를 포함한 반복블
록(3개)를 사용하는 알고리즘 표현(그 외 방향회전블록(2개) 사용)
• 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)과 전진블록(1개)을 포함한 반복블럭(1개)을
사용하는 알고리즘 표현
• 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 아는 경우에도 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)을
사용 가능하다는 것을 이해하고 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)과 전진블록(2개)을 포함한 반복블
럭(1개)과 전진블록(1개)를 포함한 반복블럭(1개)을 사용하는 알고리즘 표현
• 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개), 아이템(꽃꿀) 획득 블록(1개), 전진블록(1개)
를 포함한 반복블록(3개), 만들기 명령 블록(1개)를 포함한 반복블록(1개)를 사용하는 알고리즘 표현(그 외 전진블록(1개), 방향회전블
록(3개) 사용, 중첩반복으로 알고리즘 단순화도 가능)
• 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개), 전진블록(2개), 방향회전블록(2개)을 포함하
는 반복블록(1개)를 사용하는 알고리즘 표현
코스3
(3)if/else 조건문 블록의 이해(S7)
• if/else 조건블록(1개) 사용 - 꿀 만들기 퍼즐에서 장소(꽃에서) 조건을 넣어 if/else조건문 블록(1개)의 if 실행 값에 아이템(꽃꿀) 획
득 블록(1개)과 else 실행 값에 만들기 명령 블록(1개)를 사용하는 알고리즘 표현
• 반복블록 안에 if/else 조건블록(1개), 반복블록(1개) 사용 - 꿀 만들기 퍼즐에서 장소(꽃에서) 조건을 넣어 if/else조건문 블록(1개)의
if 실행 값에 아이템(꽃꿀) 획득 블록(1개)과 else 실행 값에 만들기 명령 블록(1개)를 포함하는 반복블록(1개)과 전진블록(1개)를 포함
하는 반복블록(1개)를 중첩반복하는 알고리즘 표현(그 외 전진블록(1개), 방향회전블록(1개) 사용) -
• if/else 조건블록(1개)의 else 실행 값에 if/else 조건블록(1개) 사용 - 꿀 만들기 퍼즐에서 꽃꿀 양에 대한 조건을 가진 if/else조건문
블록(1개)의 else 실행 값에 꽃꿀 양에 대한 조건을 가진 또 다른 if/else조건블록(1개)을 추가하는 알고리즘 표현(그 외 전진블록(1개),
방향회전블록(1개) 사용)
• if/else 조건블록(1개) 안에 반복블록(1개), if/else블록(1개)이 포함된 함수 완성하기와 함수 블록(1개)를 포함하는 반복블록(1개) 사용
- 꿀 만들기 퍼즐에서 if 실행 값에 아이템 획득 블록(1개)를 가진 반복블록(1개), else 실행 값에 꽃꿀 양에 대한 조건을 가진 또 다
른 if/else조건블록(1개)을 갖는 꽃꿀 양에 대한 조건을 가진 if/else조건 블록(1개)을 사용하여 함수를 완성하고 이 함수(1개)와 전진
블록(1개)을 포함하는 반복블록(1개)을 사용하는 알고리즘 표현
• if/else 조건블록(1개) 안에 반복블록(1개), if/else 조건블록(1개)이 포함된 함수 완성하기(맵의 난이도 상승) - 꿀 만들기 퍼즐에서 if
실행 값에 아이템 획득 블록(1개)를 가진 반복블록(1개), else 실행 값에 꽃꿀 양에 대한 조건을 가진 또 다른 if/else조건블록(1개)을
갖는 꽃꿀 양에 대한 조건을 가진 if/else조건 블록(1개)을 사용하여 함수를 완성하는 알고리즘 표현(그 외 전진 블록(1개), 만들기 명
령 블록(1개) 사용)
• if/else 블록(1개)의 else 실행 값에 if/else 조건블록(1개)이 3중으로 중첩된 미완성 함수가 있을 때 비워진 if 실행 값과 else 실행 값
에 적절한 블록을 채워 함수 완성하기 - 꿀 만들기 퍼즐에서 if 실행 값에 만들기 명령 블록(1개), else 실행 값에 꽃꿀 양에 대한 조
건을 가진 또 다른 if/else조건블록(1개)을 갖는 꽃꿀 양에 대한 조건을 가진 if/else조건 블록(1개)을 사용하여 함수를 완성하는 알고리
즘 표현(그 외 전진 블록(1개), 만들기 명령 블록(1개) 사용)
함수문과 변수
코스3
○ 함수에 대해 이해하기
(1) 일상 생활 속의 활동들을 함수로 나타내보고, 함수로 프로그램을 구성할 수 있음을 이해하기(UN)
• 서로 다른 함수들로 구성된 동일한 프로그램을 파악하여 선택하기[선다형]
• 함수들로 구성된 프로그램이 의미하는 단어를 파악하여 맞추기[맞추기]
(2) 노래에서 코러스를 찾는 활동을 통해 함수를 이해하고 함수의 효율성 인지하기(UN)
• 노래에서 코러스 부분 찾아내기(함수 구분하기)[선다형]
○ 반복문의 사용에서 점차 함수를 사용한 알고리즘 표현으로 나아가기
(1) 루프를 사용하여 알고리즘 작성하기
(2) [동영상] 함수문을 작성하고 원하는 때에 호출하여 프로그램을 쉽게 작성할 수 있음을 제시
[동영상] 함수를 농구 기술에 비유하여 그 효과와 사용 방법을 제시
(3) 그림 그리기에 필요한 알고리즘을 만들기 위해 주어진 함수문을 그대로 사용하거나 수정하여 사용하기
- 주어진 함수문을 그대로 사용하여 알고리즘 만들기
• 함수문으로 순차문 만들기
• 함수문에 각도 선택 블록이나 거리 점프 블록을 추가한 후 루프를 씌워 반복문 만들기
• 주어진 함수문을 실행시켜보며 자유롭게 그림 그리기
• 두 개의 함수문을 사용하여 알고리즘 만들기
- 주어진 함수문을 수정하여 알고리즘 만들기
• 함수문 내의 이동 거리를 수정한 후 알고리즘 만들기
• 함수문 자체의 반복 횟수, 이동 거리, 회전 각도 등을 수정하기
• 주어진 함수문을 사용하여 작성한 알고리즘들(순차문) 중 제시된 그림을 그리기 위한 알고리즘이 무엇인지 선택하기(평가)[선다형]
(4) 문제를 해결하기 위한 알고리즘을 만들기 위해 주어진 함수문을 그대로 사용, 수정하여 사용, 또는 필요한 함수를 구성하기
- 주어진 함수문을 그대로 사용하여 알고리즘 만들기
• 함수문으로 순차문 만들기 - (평가)
• 함수문에 앞으로 이동 블록을 추가한 후 루프를 씌워 반복문 만들기
- 주어진 함수문을 수정하여 알고리즘 만들기
• 함수문 내에 루프 씌우기
• 함수문 내의 방향을 수정한 후 알고리즘 작성하기
- 함수문을 직접 구성하여 알고리즘 만들기
• 함수문 구성하기
• 함수문을 구성하고 알고리즘 작성하기 - (평가)
코스4
○ 추상화와 변수의 개념에 대해 이해하기
(1) 변수들 묶기
- 영어 문장들을 예시로 변수의 개념을 설명하고 변수를 사용하는 방법 제시(UN)
(2) 매들립
- 영어 이야기를 예시로 추상화의 성격과 원리 설명(UN)
○ 변수를 사용하여 여러 가지 다각형을 이용한 그림 그리는 알고리즘 표현하기
- 정삼각형을 이용한 그림 그리는 알고리즘 표현
• 반복문을 사용하여 정삼각형 그리기(변수 사용 없음)
- [동영상] 변수의 개념과 기능 설명
(1) 변수의 입력값 설정하기
• 반복문에 사용된 길이 변수 입력값 설정하기
• 정삼각형 세 개를 그리기 위한 중첩 반복 알고리즘에 사용된 길이 변수의 입력값 설정하기
• 정육각형 6개를 그리기 위한 알고리즘에서 한 변의 길이가 주어지지 않을 때 길이 변수의 입력값 설정하기
(2) 변수의 입력값이 주어졌을 때 다른 블록에 변수 블록을 넣어 알고리즘 완성하기
• 변수 블록 1번 사용하기
• 변수 블록 2번 사용하기
• 변수의 입력값을 설정하는 블록을 추가하고 입력값을 설정한 후 다른 블록에 변수 블록을 넣어 알고리즘 완성하기
- [동영상] 변수 ‘height’를 예시로 컴퓨터의 변수를 이용한 수학적 문제해결 과정을 설명
(3) 수학문(연산자)에서 변수 블록 사용하기
• ‘width*2’ 형태의 수학문
• ‘360/sides’ 형태의 수학문
(4) 변수의 입력값 수정하기
• 변수 sides의 입력값 수정하기
• 변수 sides의 입력값을 수정하고 거리이동블록의 이동 거리 수정하기
• 중첩 반복문에 사용된 변수의 입력값 수정하기
• 변수를 사용한 프로그램을 실행시켜 확인한 후 원하는 그림 그리기(인쇄 및 공유 가능)
(5) 변수가 두 개일 때 알고리즘 표현하기
• 변수의 입력값 설정 블록을 수정하고 다른 변수의 입력값 설정 블록 추가하기
• 한 변수의 입력값 설정 블록을 다른 변수가 포함된 수학문으로 만들고 포함되는 변수의 입력값 수정하기
• 변수가 두 개 포함되어 있는 다중중첩 반복문을 사용한 프로그램을 실행시켜 확인한 후 원하는 그림 그리기(인쇄 및 공유 가능)
• 변수가 두 개 포함되어 있는 다중중첩 반복문을 사용한 알고리즘 작성하기
• 거리이동블록, 각도입력블록, 펜 두께 설정, 색 설정, 반복 블록, 변수 블록, 변수값 설정 블록, 값 입력 블록, 수학문 블록을 사용하
여 자유 그림 그리는 알고리즘 표현(자유 시간)
○ 변수를 사용하여 게임 프로그램 만들기
- 주어진 프로그램을 실행해보며 이해하고 방향키 조작하기
• 속도 설정 블록 이해하기
• 위쪽 방향키를 눌렀을 때 위로 갔다가 아래로 오는 기능 이해하기
- [동영상] 게임을 만들 수 있는 다양한 변수들을 소개
• 두 캐릭터의 속도 동일하게 변경하기
• 위쪽 방향키를 눌렀을 때 올바른 변수값만큼 위로 갔다가 내려오도록 변수값 수정하기
• 초기 점수가 설정된 프로그램을 실행해보며 이해하기
• 변수를 사용해 점수 설정하기
• 점수 변수와 수학문(연산자)를 사용하여 점수가 누적되도록 만들기
• 이벤트(Events), 행동(Actions), 반복문(Loops), 수학문(Math), 변수(Variables), 논리문(Logic) 블록들을 사용하여 원하는 게임 만들기
○ 함수문을 사용한 알고리즘을 만들어 정삼각형과 정사각형으로 이루어진 그림 그리기
- 정사각형 1개 그리기
• 반복문을 사용하여 알고리즘 작성하기
• 함수문이 사용된 알고리즘을 실행해보며 이해하기
- [동영상] 함수문의 효과와 블록의 구성 및 사용 방법 설명
• 함수문 수정하기에서 함수의 기능 작성하기
• ‘사각형 그리기’ 함수 알고리즘 수정하기
• ‘사각형 그리기’ 함수 알고리즘 작성하기
- 정사각형 3개 그리기
• 중첩 반복문을 사용하여 알고리즘 작성하기
• 각도입력블록이 활용된 알고리즘을 실행해보며 이해하기
• 함수문 수정하기에서 함수의 기능 작성하기
- 정삼각형 1개 그리기
• 함수 알고리즘에서 반복문의 반복횟수 수정하기
- 정삼각형 1개와 정사각형 1개로 이루어진 그림 그리기
• 설정되어있는 ‘삼각형 그리기’와 ‘사각형 그리기’ 함수 블록을 사용하여 프로그램 작성하기
- 정사각형으로 이루어진 열 그리기(응용)
• 중첩 반복문을 포함하는 함수 알고리즘을 실행해보며 이해하기
• 설정되어있는 함수 알고리즘 블록과 반복문을 사용하여 프로그램 작성하기(이동거리와 회전각도가 설정되어 있는 경우/팝업창으로
힌트를 제시하는 경우)
• 함수 알고리즘의 반복 횟수 수정과 함수 알고리즘 블록을 사용하여 프로그램 작성하기
• 행동(Actions), 색깔(Color), 반복문(Loops), 수학문(Math), 기능문(Functions) 블록들을 사용하여 자유롭게 그림 그리기(자유 시간)
○ 매개변수와 함수 이해하기
- 노래 가사 중 코러스를 매개변수에 비유하여 설명(UN)
○ 매개변수와 함수를 사용한 알고리즘을 만들어 삼각형, 사각형, 오각형, 육각형으로 이루어진 그림 그리기
(1) 매개변수를 사용하지 않는 함수 알고리즘으로 그림 그리기
• 정사각형 1개 그리는 함수문 알고리즘 작성하기
- [동영상] 함수문을 직접 생성하고 작성하는 방법 설명
• ‘삼각형 그리기’ 함수 알고리즘 작성하기
• 설정되어있는 ‘삼각형 그리기’ 함수 알고리즘을 사용하여 같은 크기의 삼각형 3개를 그리는 프로그램 작성하기
(2) 매개변수를 사용하여 알고리즘 표현하기
- 힌트를 보고 매개변수의 입력값을 각각 설정하기
• 점점 작아지는 3개의 삼각형 그리기
• 점점 커지는 3개의 삼각형 그리기
• 정오각형 1개 그리기
• 이어지는 정삼각형, 정사각형, 정오각형 그리기
• 점점 커지는 3개의 삼각형 그리기(동일)를 For 반복문의 변수를 사용하여 표현하기
- [동영상] 함수문에서 매개변수를 추가하여 사용할 수 있다는 것을 제시
• For 반복문을 추가하고 매개변수 블록을 넣어 정사각형 3개를 그리기 위한 알고리즘 완성하기
• 함수문 알고리즘에 매개변수 블록을 넣어 정오각형을 그리기 위한 알고리즘 완성하기
(3) 매개변수를 2개(length와 sides) 사용하여 알고리즘 표현하기
• 매개변수의 입력값을 설정하고 이를 함수 알고리즘의 반복 횟수로 설정하기
• 설정되어있는 ‘삼각형 그리기’, ‘사각형 그리기’, ‘오각형 그리기’ 함수문 알고리즘을 사용하여 세 도형이 한 변을 공유하도
록 그리는 프로그램 작성하기
• For 반복문을 사용하여 삼각형, 사각형, 오각형, 육각형이 한 변을 공유하도록 그리는 프로그램 작성하기
- 매개변수 sides를 수학문(연산자)에 넣어 함수 알고리즘을 완성하고 매개변수 length의 입력값을 각각 설정하기
• 삼각형, 사각형, 육각형 그리기
• 삼각형, 사각형, 육각형 모양 미로 그리기(For 반복문 사용)
• For 반복문과 매개변수를 포함하는 함수문을 사용하여 규칙이 있는 복잡한 그림을 그리는 프로그램 작성하기
• 행동(Actions), 색깔(Color), 반복문(Loops), 수학문(Math), 기능문(Functions), 변수(Variable) 블록들을 사용하여 자유롭게 그림 그리기
(자유 시간)
○ 매개변수를 사용하여 게임 프로그램 만들기
• 위쪽 방향키를 눌렀을 때 실행할 함수문 알고리즘 작성하기
• 위쪽과 아래쪽 방향키를 눌렀을 때 실행할 함수문을 매개변수를 사용해 작성하기
• 제시된 프로그램을 실행해보며 매개변수 actor과 height의 기능 이해하기
• 캐릭터가 주어진 거리만큼 위아래로 움직이는 함수 알고리즘 작성하기
• 캐릭터 매개변수 actor의 입력값을 각각 설정하기
• 함수 알고리즘에 매개변수 actor을 넣어 완성하고 그 입력값을 각각 설정하기
• 함수 알고리즘에 속도 매개변수 speed를 넣어 완성하고 그 입력값을 각각 설정하기
• 제시된 프로그램을 실행해보며 캐릭터별로 속도가 다르게 움직이는 방법 이해하기
• 조작하는 캐릭터(스프라이터)가 다른 캐릭터에 닿았을 때 처음 위치로 돌아가게 만들기
• 점수 매개변수 point를 수학문(연산자)에 넣어 점수가 누적되도록 만들기
• 누적된 점수가 10점이 넘었을 때 레벨이 상승하도록 만들기
• 이벤트(Events), 행동(Actions), 반복문(Loops), 수학문(Math), 변수(Variables), 기능문(Functions) 블록들을 사용하여 원하는 게임 만들
기
○ 매개변수를 사용하는 함수문으로 문제를 해결하기 위한 알고리즘 만들기
- 매개변수를 사용하지 않는 함수문으로 꽃꿀 3개 얻기
• 설정되어있는 ‘꽃꿀 3개 얻기’ 함수문을 사용하여 프로그램 작성하기
• ‘꽃꿀 3개 얻기’ 함수문 알고리즘에서 회전방향 수정하기
- 매개변수를 사용한 ‘꽃꿀 얻기’ 함수문 표현
• 함수문 알고리즘 내의 조건문에서 방향에 따라 어떤 방향회전블록을 사용해야하는지 결정하기
• 반복문과 ‘꽃꿀 3개 얻기’ 함수문을 사용하여 프로그램 작성하기
• ‘꽃꿀 5개 얻기’ 함수문 알고리즘을 직접 작성해보고 이를 사용하여 전체 프로그램 작성하기
• 꽃꿀의 개수만큼 ‘꽃꿀 획득’을 반복하기 위해 새로운 매개변수 추가하기
• 설정되어있는 ‘꽃꿀 획득’ 함수문 알고리즘을 여러 번 사용하여 프로그램 작성하기
• 꽃꿀의 개수 설정 매개변수와 꿀의 개수 설정 매개변수를 사용하여 프로그램 작성하기
이벤트
코스1
○ 이벤트의 개념 이해하기
- 주어진 종이에 그려진 버튼을 누르면 아이들이 그 버튼에 지정된 행동을 함으로써 이벤트의 개념을 이해시키기(UN)
• 블록에 따라 지정된 행동을 올바르게 나타낸 그림을 맞추도록 하여 이벤트 기반 행동 연습시키기[맞추기]
코스2 코스 1과 동일
2진법
코스2
○두 가지의 선택만을 이용하여 정보를 나타내는 방법인 2진법에 대한 이해
(1) 일상생활의 예를 통한 2진법 이해(S14 UN)
• 학습지, 로봇 눈 깜빡임 등을 통한 2진법의 의미를 이해 및 컴퓨터가 이 2진법을 바탕으로 작동한다는 사실 알고 문자와 2진법을
번갈아 바꾸어보기
• 제시된 그림보고 2진법으로 올바르게 표시한 것 고르기(평가)
• 모눈종이 프로그램이 2진법임을 인식하고 표현해보기(평가)
코스4
(2) 컴퓨터의 2진법 체계를 이해(S17 UN)
• 흑백 그림을 손가락 올림/내림, 0/1과 같은 다른 2진법 체계로 바꾸어 나타내보고 컴퓨터가 2진법 체계로 작동한다는 사실을 알며
2진법 알고리즘을 if 조건 프로그래밍으로 나타낼 수 있음을 인식
디버깅
코스1
○ 알고리즘의 오류를 발견하여 수정하기
(1) 미완성 알고리즘에서 오류를 발견하여 방향블록을 추가하거나 삭제하는 디버깅하기(S5)
• 디버깅에 대한 의미와 미로퍼즐 중 알고리즘을 디버깅하는 방법을 이해(동영상)
• 미로퍼즐 중 미완성 알고리즘(블록 2개/블록 3개)에서 방향블록을 추가(1개)하는 디버깅하기
• 미로퍼즐 중 미완성 알고리즘(블록 4개)에서 방향블록을 제거(2개)하는 디버깅하기
• 미로퍼즐 중 미완성 알고리즘에서 방향블록을 추가(2개)하는 디버깅하기
• 미로퍼즐 중 미완성 알고리즘(블록 3개)에서 방향블록의 순서를 바꾸는 디버깅하기
• 미로퍼즐 중 미완성 알고리즘(블록 7개/5개/8개)에서 방향블록을 제거(1개/1개/3개)하는 디버깅하기
• 미로퍼즐 중 미완성 알고리즘(블록 4개)에서 방향블록을 추가(2개)하는 디버깅하기
• 미로퍼즐 중 미완성 알고리즘(블록 4개/7개)에서 방향블록을 제거(2개)하고 추가(2개)하는 디버깅하기
코스2
(2) 협업하여 미완성 알고리즘의 오류를 디버깅하기(S9)
• 주어진 모눈종이의 격자무늬를 그리는 프로그램을 릴레이로 협동하여 디버깅하는 게임하기(UN)
(3) 미완성 알고리즘에서 오류를 발견하여 전진블록 추가·삭제, 반복블록 사용·수정, 방향회전블록 수정, 아이템획득블록 및 만들기
명령블록 수정하는 디버깅하기(S10)
• 꿀 만들기 퍼즐 중 알고리즘을 디버깅하는 방법을 이해(동영상)
• 꿀 만들기 퍼즐 중 블록 사용 개수를 줄이기 위해 여러 개의 전진블록 순차 배열을 반복블록으로 바꾸는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 전진블록(1개)를 제거하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 7개)에서 방향회전블록(1개)의 방향을 바꾸는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 8개)에서 방향회전블록(1개)의 방향을 바꾸고 아이템획득 블록(1개)을 추가하는 디버깅하
기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 3개)에서 반복블록(1개)의 반복횟수를 조정하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 6개)에서 전진블록(1개)를 추가하고 반복블록(1개/2개)의 반복횟수를 조정하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개-반복블록 포함)에서 전진블록(2개)를 제거하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 만들기 명령 블록(1개)을 아이템획득 블록으로 바꾸고 반복블록(1개)의 반복횟수
를 조정하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 11개)에서 만들기 명령 블록(1개)의 위치를 수정하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 6개)에서 방향회전블록(1개)의 방향을 바꾸고 반복블록(1개)의 반복횟수를 조정하는 디버
깅하기(평가)
(4) 미완성 알고리즘에서 오류를 발견하여 거리이동블록 수정, 각도회전블록 수정, 거리점프블록 추가, 반복블록을 수정하는 디버깅하
기(S11)
• 예술가 프로그램 중 알고리즘을 디버깅하는 방법을 이해(동영상)
• 예술가 프로그램 중 미완성 알고리즘(블록 9개)에서 거리이동블록(1개)의 거리를 수정하는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 8개)에서 거리이동블록(1개)의 거리 수정, 각도회전블록(1개)의 방향 수정, 각도회전블록
의 회전각도를 수정하는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 7개)에서 각도회전블록의 회전각도를 수정하는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 5개)에서 거리이동블록(1개)을 제거하는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 7개)에서 거리이동블록(1개)의 거리 수정, 거리이동블록(1개)를 거리점프블록으로 바꾸는
디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 5개)에서 거리이동블록(1개)의 거리 수정, 거리점프블록(1개) 추가, 각도회전블록(1개)의
방향을 바꾸는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 10개-중첩반복문)에서 반복블록(1개)의 반복횟수를 수정하는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 6개)에서 각도회전블록(1개)의 회전각도를 수정하는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 7개)에서 반복블록 안의 거리이동블록(1개)의 거리 수정하는 디버깅하기
• 예술가 프로그램 중 미완성 알고리즘(블록 11개)에서 반복블록(1개)의 반복횟수를 수정하는 디버깅하기
• 예술가 프로그램 중 원을 그리는 미완성 알고리즘 중 오류 부분 찾아내기(평가)
코스3
(5) 미완성 알고리즘에서 오류를 발견하여 if/else조건문 블록 수정, while반복 블록 수정, 함수블록 수정, 중첩반복블록을 수정하는 디
버깅하기(S14)
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 if/else조건문 블록(1개)를 수정하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 while반복블록(1개)를 수정하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 8개, 함수블럭 1개)에서 함수블록(1개)에 방향회전블럭(1개)를 추가하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 4개, 함수블럭 1개)에서 함수블록(2번)를 추가하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 9개, while함수 블럭이 포함된 함수블럭 1개)에서 while함수 블록(1개)을 수정하는 디버깅
하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 3개)에서 중첩반복블록(1개)의 반복횟수(1개)를 수정하고 전진블록(1개)를 추가하는 디버깅
하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 4개)에서 중첩반복블록(1개)의 반복횟수(2개)를 수정하는 디버깅하기
• 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 중첩반복블록(1개)의 반복횟수 수정, 전진블록(1개) 추가와 반복블럭(1개)를 추가
하는 디버깅하기
생활 속의 알고리즘
코스1
○ 현실 세계 상황 속에서 알고리즘을 이해, 표현하고 실행해보기
(1) 현실 속 사건을 시간 순서대로 분석하여 그림, 문장 알고리즘으로 표현하고 실행하기(S6)
• 씨앗심기에 필요한 단계를 추출하고 알고리즘으로 표현 후 실제로 실행해보기(UN)
• 이 닦기 알고리즘, 씨앗심기 알고리즘 중 빠진 단계를 찾아내기(평가)
코스2
(2) 어떠한 형태를 갖는 결과물을 얻기 위해서 필요한 단계를 알고리즘으로 표현하고 실행하기(S1, S2)
• 모눈종이 그림을 문장 명령 알고리즘과 화살표 알고리즘으로 표현하고 이 알고리즘을 보고 모눈종이 그림을 나타내어보기(UN)
• 종이비행기 접기 알고리즘을 떠올려 설명서를 만들고 설명서를 보고 종이비행기 접어보기(UN)
• 도형이 조합된 그림을 보고 그 그림을 그리는 문장 알고리즘 표현하기 및 문장 알고리즘으로 그릴 수 있는 그림 찾기(평가)
코스3
(3) 현실 속 사건을 시간 순서대로 분석하여 알고리즘으로 표현해보고 이를 컴퓨터가 인식하는 알고리즘으로 바꾸어 생각해보기(S10)
• 주사위 게임을 실제로 실행하면서 알고리즘을 떠올려보고 컴퓨터가 인식하는 알고리즘으로 바꾸어 생각해보기
• 알고리즘의 의미를 떠올려 알고리즘으로 나타낼 수 있는 것과 없는 것으로 구분하기(평가)
코스4
(4) 알고리즘을 갖는 어떠한 일을 사람과 컴퓨터가 의사소통하면서 처리하는 상황을 간접 경험해보기(S2)
• 설명만 듣고 탱그램으로 주어진 그림을 완성하는 게임하기
만들기
코스1
○ 프로그래밍을 통해 자신만의 창작물 만들기
(1) 프로그램을 이용한 간단한 이야기 만들기(S16)
• Play Lap으로 이야기를 만드는 방법에 대한 이해(동영상)
• 캐릭터 말하기 동작 블록을 사용하는 알고리즘 표현
• 캐릭터 움직이기 동작 블록을 사용하는 알고리즘 표현
• 이벤트 블록을 사용하는 알고리즘 표현
• 캐릭터 감정 표현 블록을 사용하는 알고리즘 표현
• 스피드 블록, 보이게 하기 블록 등 나머지 블록을 사용하는 알고리즘 표현
• Play Lap으로 이용하여 자신만의 이야기를 만들어보기
코스2
(2) 프로그래밍을 통해 간단한 게임 만들기(S16)
• Flappy Bird로 게임을 만드는 방법에 대한 이해(동영상)
• 이벤트 블록을 사용하여 게임을 시작하는 알고리즘 표현하기
• 이벤트 블록을 사용하여 게임을 종료하는 알고리즘 표현하기
• 소리 출력 블록, 스피드 블록을 사용하여 알고리즘 표현하기
• 이벤트 블록을 사용하여 점수를 얻는 알고리즘 표현하기
• 랜덤 배경 블록, 랜덤 캐릭터 블록을 사용하여 알고리즘 표현하기
• 이벤트 블록을 사용하여 점수를 잃는 알고리즘 표현하기
• 물체 설정 블록, 바닥 설정 블록, 중력 설정 블록 등을 사용하여 알고리즘 표현하기
• Flappy Bird를 이용하여 자신만의 게임을 만들어보고 인터넷상에 공유하기
(3) 프로그래밍을 통해 간단한 이야기 만들기(S17)(프로그램의 복잡성 상승)
• 캐릭터 말하기 동작 블록을 사용하여 대화를 주고받는 알고리즘 표현
• 캐릭터 움직이기 동작 블록을 사용하여 캐릭터들이 움직이는 알고리즘 표현
• 캐릭터 랜덤 움직이기 동작 블록과 이벤트 블록을 사용하는 알고리즘 표현
• 캐릭터를 클릭하는 이벤트 블록을 사용하는 알고리즘 표현
• 각 방향키를 누르는 이벤트 블록을 사용하는 알고리즘 표현
• 무한반복 블록을 사용하는 알고리즘 표현
• 캐릭터끼리 닿는 이벤트 블록을 사용하는 알고리즘 표현
• 랜덤 배경 블록, 랜덤 속도 블록을 사용하는 알고리즘 표현
• Play Lap으로 이용하여 자신만의 이야기를 만들어보고 인터넷상에 공유하기
코스3
(4) 프로그래밍을 통해 바운스 게임 만들기(S15)
• 각 방향키를 누르는 이벤트 블록을 사용하는 알고리즘 표현
• 라켓이 공이 부딪히는 이벤트 블록에 공 넘기기 블록, 소리 출력 블록을 연결하는 알고리즘 표현
• 벽에 공이 부딪히는 이벤트 블록에 공 넘기기 블록을 연결하는 알고리즘 표현
• 골대에 공이 들어가는 이벤트 블록에 점수 획득 블록을 연결하고 라켓이 공을 놓치는 이벤트 블록에 상대방 점수 획득 블록을 연
결하는 알고리즘 표현
• 공 스피드 블록, 랜덤 배경 블록, 라켓 스피드 블록을 사용하는 알고리즘 표현
• 자신만의 게임을 만들어보기
정보윤리
코스1
○ 정보 보호에 관한 의식 갖기
(1) 온라인상에서 개인 정보 유출을 막는 방법에 대한 이해(S17 UN)
• 개인 정보의 종류를 알아보고 사적인 정보를 담지 않고 인터넷 사이트를 활용하는 방법에 대해 알아보기
코스2
(2) 디지털 흔적에 대한 이해(S18 UN)
• 온라인상의 정보를 통해 누군가를 찾아가는 과정을 통해 구체적이고 상세한 개인 정보를 남길수록 디지털 흔적이 많아진다는 사실
깨닫기
코스3
(3) 디지털시민(온라인상에서 안전하고 책임감 있고 존경스럽게 행동하는 사람) 의식(S20 UN)
• 개인정보와 사적 정보의 차이점을 알고, 디지털 시민인 슈퍼 히어로를 만드는 게임을 통해 디지털 시민의식에 대해 인식하기
조작(행동) · 정의 · 인지적 능력
코스1
○ 프로그래밍 시 필요한 조작 능력(S1,S2,S3)
(1) 방향키 이해: 목표 지점으로 가기 위해 종이 화살표 배열해보기(UN)
(2) 명령어 이해: 몸짓 명령어를 통해 목표지점으로 이동시키기(UN), 공통 언어인 화살표를 이용해 목표지점으로 이동시키기(평가)
(3) 마우스의 드래그 앤 드롭 이해: 그림 전체 - 2분할 - 3분할 퍼즐 맞추기(붙어있지 않은, 붙어있는) - 블록 알고리즘 블록 맞추기
○ 프로그래밍 시 가져야 할 정의적 능력(S9 UN)
(4) 프로그래밍 시 인내심의 필요성 알기
• 여러 가지 물건을 사용하여 실패를 경험하면서 건물을 끝까지 만들어보기
코스3
○ 프로그래밍 시 필요한 사고 능력(S9 UN)
(5) 컴퓨터과학(정보과학)적 사고 - 분석, 패턴 맞추기, 추상화, 알고리즘 등
• 주어진 유사한 어구들의 동일한 부분을 파악하여 문장 패턴 맞추기 게임하기
인터넷과 클라우드 소싱
코스3
○ 인터넷과 URL, IP, DNS 등의 개념과 원리에 인터넷 원리에 대해 이해하기
- 인터넷을 통하여 메시지를 보내는 과정을 이해하고 그 과정을 행동으로 표현해보기(UN)
• URL과 IP주소의 상호 호환성을 이해하고 주어진 URL의 IP주소 선택하기[선다형]
• URL과 IP주소의 상호 호환성을 이해하고 주어진 IP주소의 URL 선택하기[선다형]
○ 클라우드 소싱의 개념 이해하기
- 함께 협동하며 활동해봄으로써 클라우드 소싱의 개념을 이해하고 클라우드 소싱 연습하기(UN)
• 클라우드 소싱을 이해한 후 이를 잘 표현하는 그림 선택하기[선다형]
• 클라우드 소싱을 연습하기 좋은 대상 선택하기[선다형]

More Related Content

More from YoungSik Jeong

[팸플릿]2016 한국정보교육학회 하계 학술대회
[팸플릿]2016 한국정보교육학회 하계 학술대회[팸플릿]2016 한국정보교육학회 하계 학술대회
[팸플릿]2016 한국정보교육학회 하계 학술대회YoungSik Jeong
 
서비스경제 발전전략
서비스경제 발전전략서비스경제 발전전략
서비스경제 발전전략YoungSik Jeong
 
2015년 초·중·고 사교육비조사 결과
2015년 초·중·고 사교육비조사 결과2015년 초·중·고 사교육비조사 결과
2015년 초·중·고 사교육비조사 결과YoungSik Jeong
 
붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획
붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획
붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획YoungSik Jeong
 
소프트웨어교육론 전체
소프트웨어교육론 전체소프트웨어교육론 전체
소프트웨어교육론 전체YoungSik Jeong
 
Code.org평가유형 기초자료
Code.org평가유형 기초자료Code.org평가유형 기초자료
Code.org평가유형 기초자료YoungSik Jeong
 
구글 인사드 Hq 간단 분석
구글 인사드 Hq 간단 분석구글 인사드 Hq 간단 분석
구글 인사드 Hq 간단 분석YoungSik Jeong
 

More from YoungSik Jeong (7)

[팸플릿]2016 한국정보교육학회 하계 학술대회
[팸플릿]2016 한국정보교육학회 하계 학술대회[팸플릿]2016 한국정보교육학회 하계 학술대회
[팸플릿]2016 한국정보교육학회 하계 학술대회
 
서비스경제 발전전략
서비스경제 발전전략서비스경제 발전전략
서비스경제 발전전략
 
2015년 초·중·고 사교육비조사 결과
2015년 초·중·고 사교육비조사 결과2015년 초·중·고 사교육비조사 결과
2015년 초·중·고 사교육비조사 결과
 
붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획
붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획
붙임1. 2016년 소프트웨어(sw)교육 선도학교 운영 계획
 
소프트웨어교육론 전체
소프트웨어교육론 전체소프트웨어교육론 전체
소프트웨어교육론 전체
 
Code.org평가유형 기초자료
Code.org평가유형 기초자료Code.org평가유형 기초자료
Code.org평가유형 기초자료
 
구글 인사드 Hq 간단 분석
구글 인사드 Hq 간단 분석구글 인사드 Hq 간단 분석
구글 인사드 Hq 간단 분석
 

Recently uploaded

TDM(Text Data Mining) Studio manual(2024)
TDM(Text Data Mining) Studio manual(2024)TDM(Text Data Mining) Studio manual(2024)
TDM(Text Data Mining) Studio manual(2024)yonseilibrary
 
코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.
코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.
코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.ultrasuperrok
 
코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다
코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다
코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다ultrasuperrok
 
이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.
이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.
이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.ultrasuperrok
 
친환경, 그린, 탄소저감 미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료
친환경, 그린, 탄소저감  미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료친환경, 그린, 탄소저감  미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료
친환경, 그린, 탄소저감 미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료Seongwon Kim
 
바리스타이론기초-1 수정 후 111111111111111111111111
바리스타이론기초-1 수정 후 111111111111111111111111바리스타이론기초-1 수정 후 111111111111111111111111
바리스타이론기초-1 수정 후 111111111111111111111111a01091282057
 

Recently uploaded (6)

TDM(Text Data Mining) Studio manual(2024)
TDM(Text Data Mining) Studio manual(2024)TDM(Text Data Mining) Studio manual(2024)
TDM(Text Data Mining) Studio manual(2024)
 
코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.
코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.
코딩 테스트 합격자 되기 C++ 00장~ 01장을 정리한 강의자료 입니다.
 
코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다
코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다
코딩테스트 합격자 되기 C++ 03장(시간 복잡도)를 설명한 ppt입니다
 
이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.
이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.
이번에 새로 나온 코딩 테스트 합격자 되기 C++편 책을 소개하는 PPT 입니다.
 
친환경, 그린, 탄소저감 미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료
친환경, 그린, 탄소저감  미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료친환경, 그린, 탄소저감  미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료
친환경, 그린, 탄소저감 미래 교육 공간 디자인의 이해와 사례들에 대한 강의 자료
 
바리스타이론기초-1 수정 후 111111111111111111111111
바리스타이론기초-1 수정 후 111111111111111111111111바리스타이론기초-1 수정 후 111111111111111111111111
바리스타이론기초-1 수정 후 111111111111111111111111
 

Code.org프레임워크분석

  • 1. 반복문 코스1 ○ 루프에 대해 이해하기 (1) 반복되는 동작들을 루프로 묶었을 때의 효과 인지하기 (2) [동영상] 벌집에서 꽃꿀을 얻거나 꿀을 만드는 과정에서 반복되는 과정들을 반복문으로 설명 ○ 주어진 순차문을 루프를 사용하여 간단하게 만들기 (1) 순차문 만들기 (2) 루프를 1, 2, 3개 사용하여 반복 알고리즘 만들기 - 루프를 한 개 사용하여 반복 알고리즘 만들기 • 반복횟수가 미리 지정되어(툴 박스)있는 상황에서 루프 한 개를 사용하여 순차문을 반복문으로 바꾸어 작성하기 • 반복횟수가 미리 지정되어있지 않은 경우 루프 하나 안에 한 개의 방향이동블록을 넣어 알고리즘 작성하기 - (평가) • 반복횟수가 미리 지정되어있지 않은 경우 루프 하나 안에 두 개의 방향이동블록을 넣어 알고리즘 작성하기 - 루프를 두 개 사용하여 반복 알고리즘 만들기 • 반복횟수가 미리 지정되어(작업 영역)있는 상황에서 루프 두 개를 사용하여 알고리즘 완성하기 • 반복횟수가 미리 지정되어있지 않은 경우 루프 두 개와 하나 또는 두 개의 방향이동블록을 사용하여 알고리즘 작성하기 - (평가) - 루프 세 개를 사용하여 반복 알고리즘 만들기(반복횟수가 미리 지정되어있지 않음) - 순차문을 하나의 루프 안에 한 개 또는 두 개의 방향 이동블록을 넣어 반복문으로 올바르게 바꾼 것을 선택하기(평가)[선다형] (3) 루프를 1, 2, 3개 사용하여 꽃꿀을 얻고 꿀을 만드는 반복 알고리즘 만들기 - 루프를 한 개 사용하여 반복 알고리즘 만들기 • 루프 안에 한 개의 방향이동블록을 넣어 알고리즘 작성하기 • 루프 안에 네 개의 방향이동블록을 넣어 알고리즘 작성하기 - (평가) - 루프를 두 개 사용하여 반복 알고리즘 만들기(루프 안에 꽃꿀 얻기나 꿀 만들기 등의 다양한 블록 포함) • 루프 안에 세 개의 블록을 넣어 알고리즘 작성하기 - (평가) • 루프 안에 네 개의 블록을 넣어 알고리즘 작성하기 • (이동할 수 있는 공간이 확장되었을 때) 루프 안에 각각 두 개의 블록을 넣어 알고리즘 작성하기 - 루프를 세 개 사용하여 반복 알고리즘 만들기(루프 안에 꽃꿀 얻기나 꿀 만들기 등의 다양한 블록 포함) • 루프 안에 한 개의 블록을 넣어 알고리즘 작성하기 • 루프 안에 두 개의 블록을 넣어 알고리즘 작성하기 • 루프 안에 네 개의 블록을 넣어 알고리즘 작성하기 - 루프를 네 개 사용하여 반복 알고리즘 만들기(루프 안에 꽃꿀 얻기나 꿀 만들기 등의 다양한 블록 포함) - 각 반복 알고리즘과 순차문 알고리즘을 알맞게 짝지어 맞추기(평가)[맞추기] (4) 루프를 1, 2개 사용하여 그림을 그리는 반복 알고리즘 만들기 - 루프 한 개 사용하여 반복 알고리즘 만들기 • 루프 안에 한 개의 방향이동블록을 넣어 알고리즘 작성하기(반복해야할 횟수 주어지지 않음) • 루프 안에 두 개의 방향이동블록을 넣어 알고리즘 완성하기(반복 블록이 주어짐) • 루프 안에 두 개의 방향이동블록을 넣어 알고리즘 완성하기(순차문에 반복 블록 씌우기)(평가) • 루프 안에 세 개의 방향이동블록을 넣어 알고리즘 작성하기(반복해야할 횟수 주어지지 않음) • 루프 안에 네 개의 방향이동블록을 넣어 알고리즘 완성하기(순차문에 반복 블록 씌우기) • 루프 안에 방향이동블록과 점프이동블록을 넣어 알고리즘 완성하기(순차문에 반복 블록 씌우기) - 루프 두 개 사용하여 반복 알고리즘 만들기 • 루프 안에 각각 두 개의 방향이동블록을 넣어 알고리즘 완성하기(반복 블록이 주어짐) • 루프 안에 각각 방향이동블록과 점프이동블록 한 개씩을 넣어 알고리즘 완성하기(반복 블록이 주어짐) • 방향이동블록 4종류, 방향점프블록 4종류, 색설정블록에 루프 블록을 추가하여 자유그림을 그리는 알고리즘 표현 코스2 ○ 루프에 대해 이해하기 (1) 일상생활에서 반복구조를 사용하는 예시 설명하기(UN) - 제시된 알고리즘을 반복문을 사용한 알고리즘으로 바르게 바꾼 것을 선택하기[선다형] ○ 루프를 사용하여 다양한 알고리즘 표현하기 (1) 반복문을 사용하지 않고 순차문 알고리즘으로 표현하기 (2) [동영상] 반복문(루프)의 개념과 반복 블록을 사용하는 방법 설명 예술가 프로그램에서 실제로 반복 블록을 사용하는 방법 설명 꿀벌 프로그램에서 실제로 반복 블록을 사용하여 문제를 해결하는 모습 제시 (3) 반복 블록(루프)이 사용된 알고리즘 만들기 Code.org 영역별 분석 자료 작성자 : 정영식, 서진화, 안형진, 안신영(전주교육대학교 컴퓨터교육과)
  • 2. - 반복 블록을 1, 2번 사용하여 반복 알고리즘 만들기 • 앞으로 다섯 번 이동을 루프를 사용하여 표현하기 • 앞으로 이동의 반복을 루프를 한 번 사용하여 표현하고 방향 회전하기 • 앞으로 이동의 반복을 루프를 두 번 사용하여 표현하고 방향 회전하기 • 루프 안에 앞으로 이동과 한 번의 방향 회전을 포함시켜 알고리즘 작성하기 - (평가) • 루프 안에 앞으로 이동과 두 번의 방향 회전을 포함시켜 알고리즘 작성하기 • 이동해야 할 경로에 알맞은 반복문 알고리즘 선택하기(평가)[선다형] • 반복문이 포함된 알고리즘들 중 화면의 경로에 알맞은 것끼리 맞추기(평가)[맞추기] - 반복 블록을 여러 번 사용하여 반복 알고리즘을 만들고 반복 블록을 중첩하여 사용할 수 있음을 이해하기 (4) 반복 블록(루프)이 사용된 알고리즘을 만들어 그림 그리기 - 반복 블록을 이용하여 기초 그림 그리기 • 주어진 블록들에 루프를 씌워 정사각형을 그리는 알고리즘 완성하기 • 주어진 블록들에 루프를 씌워 선 8개를 그리기 위한 알고리즘 완성하기 • 주어진 블록들에 루프를 씌워 오른쪽으로 1°씩 회전하며 원을 그리기 위한 알고리즘 완성하기 • 원 내부를 색칠하기 위한 알고리즘의 반복횟수 설정하기 • 루프를 사용하여 정팔각형을 그리기 위한 알고리즘 작성하기 - 반복 블록을 이용하여 V자 그리기 • 거리이동블록과 각도선택블록으로 V자 그리기 위한 알고리즘 작성하기(팝업창에 이동 거리 힌트 제시) • V자를 8번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기) • V자를 24번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기와 각도선택블록 추가하기) - 반복 블록을 이용하여 마름모 그리기 • 반복문 사용하여 마름모 그리기 위한 알고리즘 작성하기(팝업창에 이동 거리 힌트 제시) • V자를 3번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기) • V자를 10번 반복하여 그리기 위한 알고리즘 완성하기(루프 씌우기와 각도선택블록 추가하기) • 거리이동블록, 거리점프블록, 각도선택블록, 펜 두께 설정, 색 설정, 반복 블록을 사용하여 자유 그림 그리는 알고리즘 표현 • 여러 다각형을 그리기 위한 적절한 반복 알고리즘 맞추기(평가)[맞추기] • 제시된 알고리즘으로 그릴 수 있는 그림 선택하기(평가)[선다형] • 반복문을 사용한 알고리즘을 보고 그릴 수 있는 그림 선택하기(평가)[선다형] (5) 반복 블록(루프)을 사용하여 꽃꿀을 얻고 꿀을 만드는 알고리즘 만들기 - 루프를 사용하거나 추가하여 여러 번 꽃꿀을 얻고 꿀을 만들기 • 앞으로 이동 후 꽃꿀 1개 얻기를 2번 반복하는 것을 루프를 사용하여 표현하기 • 루프를 사용하여 ‘꽃꿀 얻기’를 4번 반복하는 알고리즘 작성하기 • 루프를 사용하여 ‘꽃꿀 얻기’와 ‘꿀 만들기’를 4번 반복하는 알고리즘 작성하기 • 방향회전블록이 포함된 알고리즘에 루프 추가하기 • 방향회전블록이 포함된 알고리즘에 루프를 추가한 후 꿀을 3개 만들기 위한 루프 추가하기 - 루프가 포함된 알고리즘을 작성하여 꽃꿀을 얻고 꿀을 만들기 • 꽃꿀 1개 얻기(방향회전블록 포함) • 꽃꿀 1개 얻고 꿀 1개 만들기 • 꽃꿀 2개 얻고 꿀 2개 만들기 • 꽃꿀 1개 얻고 꿀 1개 만들기(방향회전블록 포함) • 루프를 사용하여 앞으로 이동 후 꽃꿀을 2번 얻는 알고리즘 작성하기(평가) • 꽃꿀을 1개씩 3번 얻기 위한 올바른 알고리즘 선택하기(평가)[선다형] 코스3 ○ 여러 가지 반복구조를 사용하여 다양한 알고리즘 표현하기 (1) [동영상] 미로퍼즐 프로그램의 기본적인 방법과 반복 블록의 사용 제시 (2) 여러 가지 종류의 반복 블록(루프)이 사용된 알고리즘 만들기 - 반복 블록을 여러 번 사용하여 알고리즘 작성하기(반복횟수 직접 입력) • 루프 한 개 안에 앞으로 이동 블록이 1개 들어있는 알고리즘 작성하기 • 루프 한 개 안에 앞으로 이동 블록이나 방향 회전 블록이 3개 들어있는 알고리즘 작성하기 • 루프 두 개를 사용하여 알고리즘 작성하기 • 루프 세 개를 사용하여 알고리즘 작성하기 • 루프 다섯 개를 사용하여 알고리즘 작성하기 ○ ‘~할 때까지 반복’ 블록을 사용하여 알고리즘 작성하기 • Until 루프 안에 앞으로 이동 블록과 방향 회전 블록을 넣어 알고리즘 작성하기 - (평가) • Until 루프 안에 세 개의 블록을 넣어 알고리즘 작성하기 • Until 루프 안에 네 개의 블록을 넣어 알고리즘 작성하기 - (평가) • 순차문, 반복구조 등 미로에 맞는 알고리즘 맞추기(평가)[맞추기] • 미로에 알맞은 알고리즘 선택하기(루프 두 개 사용)(평가)[선다형] (3) 여러 상황이나 조건에서 반복 블록(루프)를 사용하여 표현한 알고리즘으로 그림 그리기 - 작업영역에 반복될 블록이 주어졌을 때 루프를 사용하여 반복횟수 지정하기 • 반복될 블록에 루프가 없는 경우 알고리즘 표현하기 • 반복될 블록에 루프가 있는 경우 (거리이동블록 추가하고) 알고리즘 표현하기 - 작업영역에 힌트가 주어지지 않을 경우 툴 박스에 지정된 힌트를 보고 알고리즘 작성하기 • 둘레의 길이를 통해 이동해야 할 거리를 유추하여 알고리즘 표현하기 - 작업영역에 반복될 블록이 주어지고 반복될 횟수도 지정되어 있을 때 회전방향과 각도 정하기
  • 3. - 작업영역이나 툴 박스에 힌트가 주어지지 않을 때 알고리즘 표현하기(팝업창에 이동할 거리에 대한 힌트가 주어짐) - (평가) - 팝업 창에 길이가 주어졌을 때 루프 안에 점프 이동 블록 사용하여 알고리즘 표현하기 • 주어진 조건에 맞는 알고리즘 선택하기(평가)[선다형] • 대칭인 모양 선택하기(평가)[선다형] • 거리이동블록, 거리점프블록, 각도선택블록, 펜 두께 설정, 색 설정, 펜 올리기, 반복 블록을 사용하여 자유그림 그리는 알고리즘 표 현 (4) if 조건 블록을 포함한 Until 반복 블록의 이해(S8) • Until 반복 블록(1개) 안에 if 조건 블록(1개)이 주어지고 if 조건 블록의 실행 값에 방향회전블록(1개)을 추가하는 알고리즘 표현 • if 조건 블록(1개)을 포함하는 Until 반복 블록(1개)을 사용하는 알고리즘 표현(그 외 전진블록(1개) 사용) • if/else 조건 블록(1개)을 포함하는 Until 반복 블록(1개)이 주어지고 if/else 조건 블록의 if 실행 값에 전진블록(1개)를 추가하고 else 실행 값에 방향회전블록(1개)를 추가하는 알고리즘 표현 • if/else 조건 블록(1개)을 포함하는 Until 반복 블록(1개)을 사용하는 알고리즘 표현(그 외 전진블록(1개), 방향회전블록(1개) 사용) • Until 반복 블록(1개) 안에 if 조건 블록(2개)이 2중으로 중첩되어 주어지고 if/else 조건 블록의 if 실행 값에 방향회전블록(1개), 전 진블록(1개)을 else 실행 값에 방향회전블록(1개)을 추가하는 알고리즘 표현 ○ 중첩 반복과 While 반복문 이해하고 사용하기 (1) 반복 블록을 중첩하여 작성한 프로그램으로 규칙이 있는 복잡한 그림 그리기 - 반복문이 있는 주어진 알고리즘에 반복 블록을 씌워 중첩 반복문 만들어보기 • 팝업창에 반복할 횟수에 대한 힌트가 주어지는 경우 - [동영상] 중첩 반복문의 개념과 블록 사용방법 설명 • 반복할 횟수에 대한 힌트가 주어지지 않는 경우 - 반복문이 있는 주어진 알고리즘에 각도 변경 블록을 추가한 후 반복 블록을 씌워 중첩 반복문 만들기 • 반복할 횟수와 각도에 대한 힌트가 없는 경우 - (평가) • 팝업창에 반복할 횟수와 각도에 대한 힌트를 제시하는 경우 - 반복문이 있는 주어진 알고리즘에 거리 이동 블록을 추가한 후 반복 블록을 씌워 중첩 반복문 만들기 • 반복할 횟수와 이동거리에 대한 힌트가 없는 경우 • 팝업창에 반복할 횟수와 이동거리에 대한 힌트를 제시하는 경우 - 반복문이 있는 주어진 알고리즘에 각도 변경 블록과 거리 이동 블록을 추가하여 루프에 넣기(반복 횟수와 거리, 각도에 대한 힌 트 없음) • 주어진 그림에 알맞은 (중첩반복이 사용된)알고리즘 선택하기(평가)[선다형] (2) While 반복 블록을 사용하여 작성한 알고리즘으로 문제 해결하기 - 순차문을 사용하여 알고리즘 작성하기 - 반복문을 사용하여 알고리즘 작성하기 - [동영상] 세차 과정을 예시로 While 루프에 대한 설명 - 반복할 행동(구덩이 매우기와 흙더미 치우기)을 몇 번 실행해야하는지 제시되었을 때 루프와 While 루프를 사용하여 알고리즘 작성하기 - 매울 구덩이 수가 주어지지 않았을 때 루프와 while 루프를 사용하여 구덩이를 매우기 위한 알고리즘 작성하기 • 구덩이 한 개 매우기 • 구덩이 두 개 매우기(루프 안에 while 루프 넣기) - 치울 흙더미 수가 주어지지 않았을 때 루프와 while 루프를 사용하여 흙더미를 치우기 위한 알고리즘 작성하기 • 흙더미 한 개 치우기 • 흙더미 세 개 치우기(루프 안에 while 루프 넣기) - 반복할 행동(구덩이 매우기와 흙더미 치우기)을 몇 번 실행해야하는지 주어지지 않았을 때 while 루프 두 개를 사용하여 알고리 즘 작성하기 • 반복할 횟수가 주어지지 않는 경우와 제시되는 경우가 혼합되어 있을 때 루프 안에 while 루프를 두 개 넣어 알고리즘 작성하기(평 가) (3) 중첩 반복문과 while 반복문을 사용하여 작성한 알고리즘으로 문제 해결하기 - 반복문을 사용하여 알고리즘 작성하기 - [동영상] 꿀벌 프로그램에서 중첩 반복문을 사용하는 방법 제시 - 루프 안에 한 개의 루프를 넣어 알고리즘 만들기 • 알고리즘 작성하기 • 주어진 알고리즘에 루프를 사용하여 반복횟수 지정하기 • 두 개의 루프가 있을 때 그 중 하나의 루프 안에 루프 넣어 알고리즘 작성하기 - 루프 안에 두 개의 루프를 넣어 알고리즘 만들기 - (평가) - 루프와 while 루프를 사용하여 알고리즘 만들기 • 알고리즘 작성하기 • 주어진 알고리즘에 루프를 사용하여 반복횟수 지정하기 • 루프 안에 while 루프가 한 개 들어있는 경우 - (평가) • 중첩된 루프 안에 while 루프가 한 개 들어있는 경우 • 주어진 미로에 알맞은 알고리즘 선택하기(하나의 루프 안에 while 루프 한 개와 루프 한 개)(평가)[선다형] ○ 반복구조와 패턴을 파악하고 반복문으로 나타내기 (1) 정사각형 반복구조(패턴)를 반복문 알고리즘으로 표현하기 • 주어진 루프 안에 들어갈 블록 지정하기(작업영역에 반복횟수 고정, 팝업창에 이동 거리 힌트로 제시) • 주어진 반복 알고리즘에 거리이동블록 추가 후 루프 안에 넣기(중첩)
  • 4. • 주어진 알고리즘에 툴 박스의 보기 블록 모음들 중 적절한 블록 모음을 선택하여 루프 안에 추가하기(두 번 중첩) (2) 마름모 반복구조(패턴)를 반복문 알고리즘으로 표현하기 • 주어진 루프 안에 들어갈 블록 지정하기(작업영역에 반복횟수에 대한 힌트가 주어지나 고정되어 있지는 않음, 팝업창에 이동 거리 힌트로 제시) • 주어진 반복 알고리즘에 각도변경블록 추가 후 루프 안에 넣기(중첩) • 주어진 알고리즘을 루프 안에 넣고 반복 횟수 설정하기(두 번 중첩) • 전 단계의 알고리즘을 수정하여 복잡한 그림 그리기(하나의 수정 사항에 대해 알려주고 뒤의 블록을 수정하도록)(두 번 중첩) (3) 육각형 반복구조(패턴)를 반복문 알고리즘으로 표현하기 • 이동 거리와 각도에 대한 힌트가 제시될 때 루프를 사용하여 알고리즘 작성하기 • 주어진 반복 알고리즘에 거리점프블록 추가 후 루프 안에 넣기(중첩) • 주어진 알고리즘을 루프 안에 넣고 반복 횟수 설정하기(두 번 중첩) • 주어진 반복 알고리즘에 거리이동블록 추가 후 루프로 묶고 반복횟수 설정하기(반복횟수와 이동거리 힌트로 제시)(세 번 중첩) (4) 원 일부 반복구조(패턴)를 반복문 알고리즘으로 표현하기 • 주어진 알고리즘을 루프 안에 넣고 반복 횟수 설정하기(회전 각도에 대한 힌트 제시) • 주어진 반복 알고리즘에서 회전 방향을 반대로 변경한 반복 알고리즘을 추가한 후 루프로 묶기(중첩) • 주어진 알고리즘에 툴 박스의 보기 블록 모음들 중 적절한 블록 모음을 선택하여 루프 안에 추가하기(다중 중첩) • 거리이동블록, 거리점프블록, 각도입력블록, 펜 두께 설정, 색 설정, 반복 블록을 사용하여 자유 그림 그리는 알고리즘 표현(자유 시 간) 코스4 ○ 반복구조에 대한 이해와 반복 블록 사용하기 (1) 순차문, 반복문, 조건문 복습 - [동영상] 반복문(루프)의 개념과 반복 블록을 사용하는 방법 설명(코스2와 동일) - 반복문을 1번 사용하여 알고리즘 작성하기 • 방향 회전 블록을 사용하지 않는 경우 • 루프 안에 방향 회전 블록을 사용하는 경우 - 반복문을 2번 사용하여 알고리즘 작성하기(루프 사이에 방향 회전 블록 넣기) (2) 반복문, 중첩 반복문을 사용하여 알고리즘을 만들고 다양한 모양의 그림 그리기 - [동영상] 순차문과 반복문을 사용하여 다양한 모양의 그림을 그리는 방법 제시 - 반복문을 사용하여 정사각형 그리기 • 팝업창으로 이동거리에 대한 힌트가 주어졌을 때 알고리즘 작성하기 • 주어진 알고리즘을 루프로 묶기(정사각형 내부에 그림 있음) - 주어진 알고리즘을 루프로 묶어 선 또는 삼각형 그리기 • 8개의 선 그리기 • 10개의 삼각형 그리기 • 12개의 삼각형 그리기 • 삼각형 세 개를 그리기 위해 주어진 반복 알고리즘에 거리 점프 블록을 추가한 후 루프로 묶기 - 원의 내부를 색칠하기 위해 반복문의 반복 횟수 설정하기 - [동영상] 중첩 반복문의 개념과 블록 사용 방법 설명(코스3과 동일) • 중첩 반복문의 반복 횟수와 각도 선택 블록의 각도 설정하기 • 10개의 평행사변형을 그리기 위하여 각도 선택 블록을 추가한 후 루프로 묶기 • 제시된 프로그램(반복문 두 개 포함)을 실행하여 그려지는 그림을 확인하고 이에 추가하여 원하는 그림 그리기(인쇄 및 공유 가능) • 앞으로 점프 후 중첩 반복문을 사용하여 알고리즘 작성하기 • 두 개의 반복문을 포함하는 중첩 반복문 만들기 • 거리이동블록, 거리점프블록, 각도입력블록, 펜 두께 설정, 색 설정, 반복 블록을 사용하여 자유 그림 그리는 알고리즘 표현(자유 시 간) ○ For 반복문에 대한 이해와 여러 프로그램에 적용하기 (1) For 반복문의 초기값, 완료값, 사이값에 대한 설명(UN) (2) For 반복문의 변수 값을 설정하고 알고리즘 작성하기 - For 반복문을 사용하지 않고 반복문만으로 알고리즘 만들기 • 앞으로 한 칸 이동 후 꽃꿀 얻기를 다섯 번 반복 • 앞으로 한 칸 이동 후 꽃꿀을 1개~5개 얻는 프로그램에서 꽃꿀 다섯 번 얻기를 추가 - [동영상] For 반복문의 초기값, 완료값, 사이값의 개념 설명 - For 반복 블록에서 초기값, 완료값, 사이값을 설정하고 이를 사용하여 알고리즘 작성하기 • For 반복문이 사용된 알고리즘을 실행해보며 이해하기 • For 반복문의 완료값 설정하기 • For 반복문의 초기값과 완료값을 설정하고 사이값 수정하기 • For 반복문의 사이값 설정하기 • For 반복문의 사이값을 설정하고 변수를 사용하여 알고리즘 완성하기 • For 반복문의 초기값, 완료값, 사이값을 설정하고 변수를 사용하여 알고리즘 완성하기 • For 반복문의 변수 값을 설정하고 이를 사용하여 알고리즘 작성하기 (3) For 반복문과 변수를 사용한 알고리즘을 작성하고 다각형 또는 원이나 미로 모양 그리기 - 삼각형 확장해가며 그리기 • 반복문을 사용하여 알고리즘 작성 • For 반복문이 사용된 알고리즘을 실행해보며 이해하기
  • 5. • For 반복문의 초기값, 완료값, 사이값 수정하기 - For 반복문으로 값이 설정된 변수 블록 사용하기 • 사각형 확장해가며 그리기 • 원 확장해가며 그리기 - 미로 모양 그리기 • For 반복문 안에 루프 제거하여 미로를 그리는 알고리즘 완성하기 • For 반복문으로 값이 설정된 변수 블록을 사용하고 회전각도 설정하기 • For 반복문의 초기값, 완료값, 사이값 설정하기 - For 반복문의 초기값, 완료값, 사이값 설정하고 그 변수 블록 사용하기 • 변수 블록 넣기 • 알고리즘 완성하기 • 알고리즘 작성하기 (4) For 반복문과 변수, 그리고 수학문(연산자)를 사용하여 알고리즘을 표현하여 실행시키기 - For 반복 블록으로 값이 설정된 변수 블록 사용하기 - For 반복 블록의 사이값을 설정하고 변수가 포함된 블록 추가하기 - For 반복문과 변수를 사용하여 캐릭터가 숫자를 말하는 프로그램 만들기 • 1부터 100까지 1씩 더하며 말하기 • 10부터 1000까지 10씩 더하며 말하기 • 1부터 10까지의 제곱수 말하기 • 1부터 10까지의 세제곱수 말하기 - 행동(Actions), 반복문(Loops), 수학문(Math), 변수(Variables), 논리문(Logic) 블록들을 사용하여 원하는 게임 만들기
  • 6. 순차문 코스1 ○ 순차적 명령구조를 이해하고 간단한 선형 알고리즘 표현하고 명령의 결과 확인하기 (1) 방향이동블록의 이해 - 목적지에 도착하는 선형 알고리즘 표현(S4 미로퍼즐) • 미로퍼즐 이해하기(동영상) • 방향이동블록(왼쪽/오른쪽/아래쪽/위쪽) 1종류(2개/3개(방향힌트 미제시)를 사용하여 목적지에 도착하는 알고리즘 표현 • 방향이동블록 2종류(2개/3개)를 사용하여 목적지에 도착하는 알고리즘 표현 • 방향이동블록 3종류(3개/7개)를 사용하여 목적지에 도착하는 알고리즘 표현 (2) 아이템획득 및 명령 블록의 이해 - 이동하면서 새로운 명령(꽃꿀 아이템 가져오기, 꿀 만들기)을 실행하는 선형 알고리즘 표현(S7 꿀벌퍼즐) • 꿀 만들기 퍼즐 이해하기(동영상) • 아이템획득 블록 1개와 만들기 명령 블록 1개를 사용하는 알고리즘 표현 : 방향 블록 1종류, 2종류 사용 • 아이템획득 블록 2개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 3종류, 2종류 사용 • 아이템획득 블록 3개와 만들기 명령 블록 3개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용 • 아이템획득 블록 3개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용 • 확장된 맵 제시 후 아이템획득 블록 2개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 2종류 사용 • 아이템획득 블록 3개와 만들기 명령 블록 1개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용 • 아이템획득 블록 3개와 만들기 명령 블록 2개를 사용하는 알고리즘 표현 : 방향 블록 2종류 사용 • 변형 맵 제시 후 아이템획득 블록 3개와 만들기 명령 블록 1개를 사용하는 알고리즘 표현 : 방향 블록 3종류 사용 (3) 방향이동블록과 방향점프블록의 이해 - 그림(점점 복잡성 상승)의 일부분을 그리는 명령(방향 이동하며 그리기, 점프하기)을 실행하는 선형 알고리즘 표현(S8, S10 예술 가) • 예술가 프로그램의 구성요소 이해하기(동영상) • 방향이동블록 1종류(1개/2개)를 사용하여 선을 그리는 알고리즘 표현 • 방향이동블록 2종류(4개)를 사용하여 선을 그리는 알고리즘 표현 • 방향이동블록 3종류(4개)를 사용하여 선을 그리는 알고리즘 표현 • 미완성 꽃 그림 제시 후 방향이동블록 1종류(2개)를 사용하여 선을 그리는 알고리즘 표현 • 방향이동블록 1종류(4개), 방향점프블록 1종류(1개)를 사용하여 선을 그리는 알고리즘 표현 • 방향이동블록 1종류(4개), 방향점프블록 1종류(3개)를 사용하여 선을 그리는 알고리즘 표현 • 방향이동블록 2종류(4개), 방향점프블록 2종류(3개)를 사용하여 선을 그리는 알고리즘 표현 • 방향이동블록 4종류(8개)를 사용하여 정사각형을 그리는 알고리즘 표현 • 방향점프블록 1종류(1개), 방향이동블록 4종류(8개)을 사용하여 정사각형을 그리는 알고리즘 표현 • 방향이동블록 4종류(8개)를 사용하여 정사각형을 그리는 알고리즘 표현 • 방향이동블록 4종류(6개)를 사용하여 직사각형을 그리는 알고리즘 표현 • 방향이동블록 4종류(8개)를 사용하여 정사각형 2개를 그리는 알고리즘 표현 • 방향이동블록 4종류(8개)를 사용하여 긴 직사각형을 그리는 알고리즘 표현 • 방향이동블록과 방향점프블록을 사용하여 직사각형을 그리는 알고리즘 작성하기 • 방향점프블록 1종류(1개), 방향이동블록 4종류(4개)을 사용하여 정사각형을 그리는 알고리즘 표현 • 닮은꼴 관계의 그림이 동일한 알고리즘으로 표현됨을 이해하기(평가) • 방향이동블록 4종류, 방향점프블록 4종류, 색설정블록을 사용하여 자유그림을 그리는 알고리즘 표현 (4) 방향이동블록의 이해 - 이동하면서 새로운 명령(알파벳 모으기)을 실행하는 선형 알고리즘 표현(S11) • 알파벳 모으기 퍼즐 이해하기(동영상) • 방향이동블록 1종류(4개/5개)를 사용하여 단어를 완성하는 알고리즘 표현 • 방향이동블록 2종류(4개)를 사용하여 단어를 완성하는 알고리즘 표현 • 방향 힌트 없이 방향이동블록 2종류(4개/5개)를 사용하여 단어를 완성하는 알고리즘 표현 코스2 (5) 전진블록과 회전블록의 이해 - 목적지에 도착하는 선형 알고리즘 표현(S3 미로퍼즐) • 미로퍼즐 이해하기(동영상) • 전진블록(2개/3개)을 사용하여 목적지에 도착하는 알고리즘 표현 • 전진블록(3개), 오른쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현 • 전진블록(3개), 오른쪽 회전블록(1개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현 • 전진블록(5개), 오른쪽 회전블록(1개), 왼쪽 회전블록(2개)을 사용하여 목적지에 도착하는 알고리즘 표현 • 전진블록(8개), 오른쪽 회전블록(2개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현 • 전진블록(7개), 오른쪽 회전블록(1개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현 • 전진블록(3개), 오른쪽 회전블록(2개), 왼쪽 회전블록(1개)을 사용하여 목적지에 도착하는 알고리즘 표현 • 전진블록(12개), 오른쪽 회전블록(4개), 왼쪽 회전블록(2개)을 사용하여 목적지에 도착하는 알고리즘 표현 (6) 거리이동블록(방향, 이동거리 조절), 각도회전블록(방향, 회전각도 조절), 점프블록(방향, 점프거리 조절)의 이해 - 그림(점점 복잡성 상승)의 일부분을 그리는 명령(일정거리 이동하기, 일정각도 회전하기)을 실행하는 선형 알고리즘 표현(S4 예술 가) • 거리이동블록 1종류(2개), 각도회전(90도)블록 1종류(1개)를 사용하여 정사각형 일부를 그리는 알고리즘 표현 • 거리이동블록 1종류(1개), 각도회전(90도)블록 1종류(1개)를 사용하여 정사각형 일부를 그리는 알고리즘 표현 • 거리이동블록 2종류(3개), 각도회전(90도)블록 2종류(3개)를 사용하여 직사각형 일부를 그리는 알고리즘 표현 • 거리이동블록 1종류(4개), 각도회전(90도)블록 1종류(1개), 점프블록 1종류(3개)를 사용하여 떨어진 선분 4개를 그리는 알고리즘 표현 • 거리이동블록 1종류(4개), 각도회전(90도)블록 1종류(4개)를 사용하여 정사각형 전체를 그리는 알고리즘 표현 • 거리이동블록 1종류(3개), 각도회전(120도)블록 1종류(2개)를 사용하여 정삼각형 전체를 그리는 알고리즘 표현 • 거리이동블록 1종류(4개), 각도회전(45도, 90도)블록 2종류(4개)를 사용하여 기울여진 정사각형 전체를 그리는 알고리즘 표현
  • 7. • 거리이동블록 1종류(6개), 각도회전(90도)블록 1종류(5개)를 사용하여 연결된 2개의 정사각형을 그리는 알고리즘 표현 • 거리이동블록 2종류(6개), 각도회전(90도)블록 1종류(5개)를 사용하여 연결된 2개의 정사각형을 그리는 알고리즘 표현 • 거리이동블록, 각도회전블록, 점프블록, 펜 두께 설정 블록, 반복블록, 색 설정블록을 사용하여 자유그림을 그리는 알고리즘 표현 코스3 코스 1과 2에 포함 코스4 코스 1과 2에 포함
  • 8. 조건문 코스2 ○ 특정한 조건 아래에서만 실행되는 진술문인 조건문을 이해하고 조건문 알고리즘 표현하기 (1) 실제 상황에서 if/else 조건의 이해(S12) • 카드의 색이나 숫자 등의 조건에 따라 점수를 얻거나 잃는 카드놀이의 알고리즘을 작성하고 이를 if/else조건문으로 바꾸어보기(UN) • if/else 조건문을 보고 결과값을 예측해보기(평가) (2) if조건문 블록의 이해(S13) • 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 알 수 없을 때 if조건문 블록을 사용하는 방법을 이해하기(동영상) • 꿀 만들기 퍼즐에서 주어진 if조건문 블록(1개)의 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 추가하는 알고리즘 표현 • 꿀 만들기 퍼즐에서 전진블록(1개), if조건문 블록(1개)을 사용하는 알고리즘 표현 • 꿀 만들기 퍼즐에서 전진블록(3개), 방향회전블록(1개), if조건문 블록(2개)을 사용하는 알고리즘 표현 • 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 알 수 있을 때 아이템(꽃꿀) 획득 블록(1개)을 사용하고, 주어진 조건(꽃꿀의 개수) 을 알 수 없을 때 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)을 사용하는 알고리즘 표현(그 외 전진블록(4개), 방향회전블록(1개) 사용) • 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 알 수 있을 때 아이템(꽃꿀) 획득 블록(1개)를 포함한 반복블럭(1개)을 사용하고, 주어진 조건(꽃꿀의 개수)을 알 수 없을 때 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)을 사용하는 알고리즘 표현(그 외 전진블록(3개), 방향회전블록(1개) 사용) • 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(3개)을 사용하고, 전진블록(1개)를 포함한 반복블 록(3개)를 사용하는 알고리즘 표현(그 외 방향회전블록(2개) 사용) • 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)과 전진블록(1개)을 포함한 반복블럭(1개)을 사용하는 알고리즘 표현 • 꿀 만들기 퍼즐에서 주어진 조건(꽃꿀의 개수)을 아는 경우에도 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)을 사용 가능하다는 것을 이해하고 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개)과 전진블록(2개)을 포함한 반복블 럭(1개)과 전진블록(1개)를 포함한 반복블럭(1개)을 사용하는 알고리즘 표현 • 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개), 아이템(꽃꿀) 획득 블록(1개), 전진블록(1개) 를 포함한 반복블록(3개), 만들기 명령 블록(1개)를 포함한 반복블록(1개)를 사용하는 알고리즘 표현(그 외 전진블록(1개), 방향회전블 록(3개) 사용, 중첩반복으로 알고리즘 단순화도 가능) • 꿀 만들기 퍼즐에서 실행 값에 아이템(꽃꿀) 획득 블록(1개)을 갖는 if조건문 블록(1개), 전진블록(2개), 방향회전블록(2개)을 포함하 는 반복블록(1개)를 사용하는 알고리즘 표현 코스3 (3)if/else 조건문 블록의 이해(S7) • if/else 조건블록(1개) 사용 - 꿀 만들기 퍼즐에서 장소(꽃에서) 조건을 넣어 if/else조건문 블록(1개)의 if 실행 값에 아이템(꽃꿀) 획 득 블록(1개)과 else 실행 값에 만들기 명령 블록(1개)를 사용하는 알고리즘 표현 • 반복블록 안에 if/else 조건블록(1개), 반복블록(1개) 사용 - 꿀 만들기 퍼즐에서 장소(꽃에서) 조건을 넣어 if/else조건문 블록(1개)의 if 실행 값에 아이템(꽃꿀) 획득 블록(1개)과 else 실행 값에 만들기 명령 블록(1개)를 포함하는 반복블록(1개)과 전진블록(1개)를 포함 하는 반복블록(1개)를 중첩반복하는 알고리즘 표현(그 외 전진블록(1개), 방향회전블록(1개) 사용) - • if/else 조건블록(1개)의 else 실행 값에 if/else 조건블록(1개) 사용 - 꿀 만들기 퍼즐에서 꽃꿀 양에 대한 조건을 가진 if/else조건문 블록(1개)의 else 실행 값에 꽃꿀 양에 대한 조건을 가진 또 다른 if/else조건블록(1개)을 추가하는 알고리즘 표현(그 외 전진블록(1개), 방향회전블록(1개) 사용) • if/else 조건블록(1개) 안에 반복블록(1개), if/else블록(1개)이 포함된 함수 완성하기와 함수 블록(1개)를 포함하는 반복블록(1개) 사용 - 꿀 만들기 퍼즐에서 if 실행 값에 아이템 획득 블록(1개)를 가진 반복블록(1개), else 실행 값에 꽃꿀 양에 대한 조건을 가진 또 다 른 if/else조건블록(1개)을 갖는 꽃꿀 양에 대한 조건을 가진 if/else조건 블록(1개)을 사용하여 함수를 완성하고 이 함수(1개)와 전진 블록(1개)을 포함하는 반복블록(1개)을 사용하는 알고리즘 표현 • if/else 조건블록(1개) 안에 반복블록(1개), if/else 조건블록(1개)이 포함된 함수 완성하기(맵의 난이도 상승) - 꿀 만들기 퍼즐에서 if 실행 값에 아이템 획득 블록(1개)를 가진 반복블록(1개), else 실행 값에 꽃꿀 양에 대한 조건을 가진 또 다른 if/else조건블록(1개)을 갖는 꽃꿀 양에 대한 조건을 가진 if/else조건 블록(1개)을 사용하여 함수를 완성하는 알고리즘 표현(그 외 전진 블록(1개), 만들기 명 령 블록(1개) 사용) • if/else 블록(1개)의 else 실행 값에 if/else 조건블록(1개)이 3중으로 중첩된 미완성 함수가 있을 때 비워진 if 실행 값과 else 실행 값 에 적절한 블록을 채워 함수 완성하기 - 꿀 만들기 퍼즐에서 if 실행 값에 만들기 명령 블록(1개), else 실행 값에 꽃꿀 양에 대한 조 건을 가진 또 다른 if/else조건블록(1개)을 갖는 꽃꿀 양에 대한 조건을 가진 if/else조건 블록(1개)을 사용하여 함수를 완성하는 알고리 즘 표현(그 외 전진 블록(1개), 만들기 명령 블록(1개) 사용)
  • 9. 함수문과 변수 코스3 ○ 함수에 대해 이해하기 (1) 일상 생활 속의 활동들을 함수로 나타내보고, 함수로 프로그램을 구성할 수 있음을 이해하기(UN) • 서로 다른 함수들로 구성된 동일한 프로그램을 파악하여 선택하기[선다형] • 함수들로 구성된 프로그램이 의미하는 단어를 파악하여 맞추기[맞추기] (2) 노래에서 코러스를 찾는 활동을 통해 함수를 이해하고 함수의 효율성 인지하기(UN) • 노래에서 코러스 부분 찾아내기(함수 구분하기)[선다형] ○ 반복문의 사용에서 점차 함수를 사용한 알고리즘 표현으로 나아가기 (1) 루프를 사용하여 알고리즘 작성하기 (2) [동영상] 함수문을 작성하고 원하는 때에 호출하여 프로그램을 쉽게 작성할 수 있음을 제시 [동영상] 함수를 농구 기술에 비유하여 그 효과와 사용 방법을 제시 (3) 그림 그리기에 필요한 알고리즘을 만들기 위해 주어진 함수문을 그대로 사용하거나 수정하여 사용하기 - 주어진 함수문을 그대로 사용하여 알고리즘 만들기 • 함수문으로 순차문 만들기 • 함수문에 각도 선택 블록이나 거리 점프 블록을 추가한 후 루프를 씌워 반복문 만들기 • 주어진 함수문을 실행시켜보며 자유롭게 그림 그리기 • 두 개의 함수문을 사용하여 알고리즘 만들기 - 주어진 함수문을 수정하여 알고리즘 만들기 • 함수문 내의 이동 거리를 수정한 후 알고리즘 만들기 • 함수문 자체의 반복 횟수, 이동 거리, 회전 각도 등을 수정하기 • 주어진 함수문을 사용하여 작성한 알고리즘들(순차문) 중 제시된 그림을 그리기 위한 알고리즘이 무엇인지 선택하기(평가)[선다형] (4) 문제를 해결하기 위한 알고리즘을 만들기 위해 주어진 함수문을 그대로 사용, 수정하여 사용, 또는 필요한 함수를 구성하기 - 주어진 함수문을 그대로 사용하여 알고리즘 만들기 • 함수문으로 순차문 만들기 - (평가) • 함수문에 앞으로 이동 블록을 추가한 후 루프를 씌워 반복문 만들기 - 주어진 함수문을 수정하여 알고리즘 만들기 • 함수문 내에 루프 씌우기 • 함수문 내의 방향을 수정한 후 알고리즘 작성하기 - 함수문을 직접 구성하여 알고리즘 만들기 • 함수문 구성하기 • 함수문을 구성하고 알고리즘 작성하기 - (평가) 코스4 ○ 추상화와 변수의 개념에 대해 이해하기 (1) 변수들 묶기 - 영어 문장들을 예시로 변수의 개념을 설명하고 변수를 사용하는 방법 제시(UN) (2) 매들립 - 영어 이야기를 예시로 추상화의 성격과 원리 설명(UN) ○ 변수를 사용하여 여러 가지 다각형을 이용한 그림 그리는 알고리즘 표현하기 - 정삼각형을 이용한 그림 그리는 알고리즘 표현 • 반복문을 사용하여 정삼각형 그리기(변수 사용 없음) - [동영상] 변수의 개념과 기능 설명 (1) 변수의 입력값 설정하기 • 반복문에 사용된 길이 변수 입력값 설정하기 • 정삼각형 세 개를 그리기 위한 중첩 반복 알고리즘에 사용된 길이 변수의 입력값 설정하기 • 정육각형 6개를 그리기 위한 알고리즘에서 한 변의 길이가 주어지지 않을 때 길이 변수의 입력값 설정하기 (2) 변수의 입력값이 주어졌을 때 다른 블록에 변수 블록을 넣어 알고리즘 완성하기 • 변수 블록 1번 사용하기 • 변수 블록 2번 사용하기 • 변수의 입력값을 설정하는 블록을 추가하고 입력값을 설정한 후 다른 블록에 변수 블록을 넣어 알고리즘 완성하기 - [동영상] 변수 ‘height’를 예시로 컴퓨터의 변수를 이용한 수학적 문제해결 과정을 설명 (3) 수학문(연산자)에서 변수 블록 사용하기 • ‘width*2’ 형태의 수학문 • ‘360/sides’ 형태의 수학문 (4) 변수의 입력값 수정하기 • 변수 sides의 입력값 수정하기 • 변수 sides의 입력값을 수정하고 거리이동블록의 이동 거리 수정하기 • 중첩 반복문에 사용된 변수의 입력값 수정하기 • 변수를 사용한 프로그램을 실행시켜 확인한 후 원하는 그림 그리기(인쇄 및 공유 가능) (5) 변수가 두 개일 때 알고리즘 표현하기 • 변수의 입력값 설정 블록을 수정하고 다른 변수의 입력값 설정 블록 추가하기
  • 10. • 한 변수의 입력값 설정 블록을 다른 변수가 포함된 수학문으로 만들고 포함되는 변수의 입력값 수정하기 • 변수가 두 개 포함되어 있는 다중중첩 반복문을 사용한 프로그램을 실행시켜 확인한 후 원하는 그림 그리기(인쇄 및 공유 가능) • 변수가 두 개 포함되어 있는 다중중첩 반복문을 사용한 알고리즘 작성하기 • 거리이동블록, 각도입력블록, 펜 두께 설정, 색 설정, 반복 블록, 변수 블록, 변수값 설정 블록, 값 입력 블록, 수학문 블록을 사용하 여 자유 그림 그리는 알고리즘 표현(자유 시간) ○ 변수를 사용하여 게임 프로그램 만들기 - 주어진 프로그램을 실행해보며 이해하고 방향키 조작하기 • 속도 설정 블록 이해하기 • 위쪽 방향키를 눌렀을 때 위로 갔다가 아래로 오는 기능 이해하기 - [동영상] 게임을 만들 수 있는 다양한 변수들을 소개 • 두 캐릭터의 속도 동일하게 변경하기 • 위쪽 방향키를 눌렀을 때 올바른 변수값만큼 위로 갔다가 내려오도록 변수값 수정하기 • 초기 점수가 설정된 프로그램을 실행해보며 이해하기 • 변수를 사용해 점수 설정하기 • 점수 변수와 수학문(연산자)를 사용하여 점수가 누적되도록 만들기 • 이벤트(Events), 행동(Actions), 반복문(Loops), 수학문(Math), 변수(Variables), 논리문(Logic) 블록들을 사용하여 원하는 게임 만들기 ○ 함수문을 사용한 알고리즘을 만들어 정삼각형과 정사각형으로 이루어진 그림 그리기 - 정사각형 1개 그리기 • 반복문을 사용하여 알고리즘 작성하기 • 함수문이 사용된 알고리즘을 실행해보며 이해하기 - [동영상] 함수문의 효과와 블록의 구성 및 사용 방법 설명 • 함수문 수정하기에서 함수의 기능 작성하기 • ‘사각형 그리기’ 함수 알고리즘 수정하기 • ‘사각형 그리기’ 함수 알고리즘 작성하기 - 정사각형 3개 그리기 • 중첩 반복문을 사용하여 알고리즘 작성하기 • 각도입력블록이 활용된 알고리즘을 실행해보며 이해하기 • 함수문 수정하기에서 함수의 기능 작성하기 - 정삼각형 1개 그리기 • 함수 알고리즘에서 반복문의 반복횟수 수정하기 - 정삼각형 1개와 정사각형 1개로 이루어진 그림 그리기 • 설정되어있는 ‘삼각형 그리기’와 ‘사각형 그리기’ 함수 블록을 사용하여 프로그램 작성하기 - 정사각형으로 이루어진 열 그리기(응용) • 중첩 반복문을 포함하는 함수 알고리즘을 실행해보며 이해하기 • 설정되어있는 함수 알고리즘 블록과 반복문을 사용하여 프로그램 작성하기(이동거리와 회전각도가 설정되어 있는 경우/팝업창으로 힌트를 제시하는 경우) • 함수 알고리즘의 반복 횟수 수정과 함수 알고리즘 블록을 사용하여 프로그램 작성하기 • 행동(Actions), 색깔(Color), 반복문(Loops), 수학문(Math), 기능문(Functions) 블록들을 사용하여 자유롭게 그림 그리기(자유 시간) ○ 매개변수와 함수 이해하기 - 노래 가사 중 코러스를 매개변수에 비유하여 설명(UN) ○ 매개변수와 함수를 사용한 알고리즘을 만들어 삼각형, 사각형, 오각형, 육각형으로 이루어진 그림 그리기 (1) 매개변수를 사용하지 않는 함수 알고리즘으로 그림 그리기 • 정사각형 1개 그리는 함수문 알고리즘 작성하기 - [동영상] 함수문을 직접 생성하고 작성하는 방법 설명 • ‘삼각형 그리기’ 함수 알고리즘 작성하기 • 설정되어있는 ‘삼각형 그리기’ 함수 알고리즘을 사용하여 같은 크기의 삼각형 3개를 그리는 프로그램 작성하기 (2) 매개변수를 사용하여 알고리즘 표현하기 - 힌트를 보고 매개변수의 입력값을 각각 설정하기 • 점점 작아지는 3개의 삼각형 그리기 • 점점 커지는 3개의 삼각형 그리기 • 정오각형 1개 그리기 • 이어지는 정삼각형, 정사각형, 정오각형 그리기 • 점점 커지는 3개의 삼각형 그리기(동일)를 For 반복문의 변수를 사용하여 표현하기 - [동영상] 함수문에서 매개변수를 추가하여 사용할 수 있다는 것을 제시 • For 반복문을 추가하고 매개변수 블록을 넣어 정사각형 3개를 그리기 위한 알고리즘 완성하기 • 함수문 알고리즘에 매개변수 블록을 넣어 정오각형을 그리기 위한 알고리즘 완성하기 (3) 매개변수를 2개(length와 sides) 사용하여 알고리즘 표현하기 • 매개변수의 입력값을 설정하고 이를 함수 알고리즘의 반복 횟수로 설정하기 • 설정되어있는 ‘삼각형 그리기’, ‘사각형 그리기’, ‘오각형 그리기’ 함수문 알고리즘을 사용하여 세 도형이 한 변을 공유하도 록 그리는 프로그램 작성하기 • For 반복문을 사용하여 삼각형, 사각형, 오각형, 육각형이 한 변을 공유하도록 그리는 프로그램 작성하기 - 매개변수 sides를 수학문(연산자)에 넣어 함수 알고리즘을 완성하고 매개변수 length의 입력값을 각각 설정하기 • 삼각형, 사각형, 육각형 그리기 • 삼각형, 사각형, 육각형 모양 미로 그리기(For 반복문 사용)
  • 11. • For 반복문과 매개변수를 포함하는 함수문을 사용하여 규칙이 있는 복잡한 그림을 그리는 프로그램 작성하기 • 행동(Actions), 색깔(Color), 반복문(Loops), 수학문(Math), 기능문(Functions), 변수(Variable) 블록들을 사용하여 자유롭게 그림 그리기 (자유 시간) ○ 매개변수를 사용하여 게임 프로그램 만들기 • 위쪽 방향키를 눌렀을 때 실행할 함수문 알고리즘 작성하기 • 위쪽과 아래쪽 방향키를 눌렀을 때 실행할 함수문을 매개변수를 사용해 작성하기 • 제시된 프로그램을 실행해보며 매개변수 actor과 height의 기능 이해하기 • 캐릭터가 주어진 거리만큼 위아래로 움직이는 함수 알고리즘 작성하기 • 캐릭터 매개변수 actor의 입력값을 각각 설정하기 • 함수 알고리즘에 매개변수 actor을 넣어 완성하고 그 입력값을 각각 설정하기 • 함수 알고리즘에 속도 매개변수 speed를 넣어 완성하고 그 입력값을 각각 설정하기 • 제시된 프로그램을 실행해보며 캐릭터별로 속도가 다르게 움직이는 방법 이해하기 • 조작하는 캐릭터(스프라이터)가 다른 캐릭터에 닿았을 때 처음 위치로 돌아가게 만들기 • 점수 매개변수 point를 수학문(연산자)에 넣어 점수가 누적되도록 만들기 • 누적된 점수가 10점이 넘었을 때 레벨이 상승하도록 만들기 • 이벤트(Events), 행동(Actions), 반복문(Loops), 수학문(Math), 변수(Variables), 기능문(Functions) 블록들을 사용하여 원하는 게임 만들 기 ○ 매개변수를 사용하는 함수문으로 문제를 해결하기 위한 알고리즘 만들기 - 매개변수를 사용하지 않는 함수문으로 꽃꿀 3개 얻기 • 설정되어있는 ‘꽃꿀 3개 얻기’ 함수문을 사용하여 프로그램 작성하기 • ‘꽃꿀 3개 얻기’ 함수문 알고리즘에서 회전방향 수정하기 - 매개변수를 사용한 ‘꽃꿀 얻기’ 함수문 표현 • 함수문 알고리즘 내의 조건문에서 방향에 따라 어떤 방향회전블록을 사용해야하는지 결정하기 • 반복문과 ‘꽃꿀 3개 얻기’ 함수문을 사용하여 프로그램 작성하기 • ‘꽃꿀 5개 얻기’ 함수문 알고리즘을 직접 작성해보고 이를 사용하여 전체 프로그램 작성하기 • 꽃꿀의 개수만큼 ‘꽃꿀 획득’을 반복하기 위해 새로운 매개변수 추가하기 • 설정되어있는 ‘꽃꿀 획득’ 함수문 알고리즘을 여러 번 사용하여 프로그램 작성하기 • 꽃꿀의 개수 설정 매개변수와 꿀의 개수 설정 매개변수를 사용하여 프로그램 작성하기
  • 12. 이벤트 코스1 ○ 이벤트의 개념 이해하기 - 주어진 종이에 그려진 버튼을 누르면 아이들이 그 버튼에 지정된 행동을 함으로써 이벤트의 개념을 이해시키기(UN) • 블록에 따라 지정된 행동을 올바르게 나타낸 그림을 맞추도록 하여 이벤트 기반 행동 연습시키기[맞추기] 코스2 코스 1과 동일 2진법 코스2 ○두 가지의 선택만을 이용하여 정보를 나타내는 방법인 2진법에 대한 이해 (1) 일상생활의 예를 통한 2진법 이해(S14 UN) • 학습지, 로봇 눈 깜빡임 등을 통한 2진법의 의미를 이해 및 컴퓨터가 이 2진법을 바탕으로 작동한다는 사실 알고 문자와 2진법을 번갈아 바꾸어보기 • 제시된 그림보고 2진법으로 올바르게 표시한 것 고르기(평가) • 모눈종이 프로그램이 2진법임을 인식하고 표현해보기(평가) 코스4 (2) 컴퓨터의 2진법 체계를 이해(S17 UN) • 흑백 그림을 손가락 올림/내림, 0/1과 같은 다른 2진법 체계로 바꾸어 나타내보고 컴퓨터가 2진법 체계로 작동한다는 사실을 알며 2진법 알고리즘을 if 조건 프로그래밍으로 나타낼 수 있음을 인식
  • 13. 디버깅 코스1 ○ 알고리즘의 오류를 발견하여 수정하기 (1) 미완성 알고리즘에서 오류를 발견하여 방향블록을 추가하거나 삭제하는 디버깅하기(S5) • 디버깅에 대한 의미와 미로퍼즐 중 알고리즘을 디버깅하는 방법을 이해(동영상) • 미로퍼즐 중 미완성 알고리즘(블록 2개/블록 3개)에서 방향블록을 추가(1개)하는 디버깅하기 • 미로퍼즐 중 미완성 알고리즘(블록 4개)에서 방향블록을 제거(2개)하는 디버깅하기 • 미로퍼즐 중 미완성 알고리즘에서 방향블록을 추가(2개)하는 디버깅하기 • 미로퍼즐 중 미완성 알고리즘(블록 3개)에서 방향블록의 순서를 바꾸는 디버깅하기 • 미로퍼즐 중 미완성 알고리즘(블록 7개/5개/8개)에서 방향블록을 제거(1개/1개/3개)하는 디버깅하기 • 미로퍼즐 중 미완성 알고리즘(블록 4개)에서 방향블록을 추가(2개)하는 디버깅하기 • 미로퍼즐 중 미완성 알고리즘(블록 4개/7개)에서 방향블록을 제거(2개)하고 추가(2개)하는 디버깅하기 코스2 (2) 협업하여 미완성 알고리즘의 오류를 디버깅하기(S9) • 주어진 모눈종이의 격자무늬를 그리는 프로그램을 릴레이로 협동하여 디버깅하는 게임하기(UN) (3) 미완성 알고리즘에서 오류를 발견하여 전진블록 추가·삭제, 반복블록 사용·수정, 방향회전블록 수정, 아이템획득블록 및 만들기 명령블록 수정하는 디버깅하기(S10) • 꿀 만들기 퍼즐 중 알고리즘을 디버깅하는 방법을 이해(동영상) • 꿀 만들기 퍼즐 중 블록 사용 개수를 줄이기 위해 여러 개의 전진블록 순차 배열을 반복블록으로 바꾸는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 전진블록(1개)를 제거하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 7개)에서 방향회전블록(1개)의 방향을 바꾸는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 8개)에서 방향회전블록(1개)의 방향을 바꾸고 아이템획득 블록(1개)을 추가하는 디버깅하 기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 3개)에서 반복블록(1개)의 반복횟수를 조정하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 6개)에서 전진블록(1개)를 추가하고 반복블록(1개/2개)의 반복횟수를 조정하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개-반복블록 포함)에서 전진블록(2개)를 제거하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 만들기 명령 블록(1개)을 아이템획득 블록으로 바꾸고 반복블록(1개)의 반복횟수 를 조정하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 11개)에서 만들기 명령 블록(1개)의 위치를 수정하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 6개)에서 방향회전블록(1개)의 방향을 바꾸고 반복블록(1개)의 반복횟수를 조정하는 디버 깅하기(평가) (4) 미완성 알고리즘에서 오류를 발견하여 거리이동블록 수정, 각도회전블록 수정, 거리점프블록 추가, 반복블록을 수정하는 디버깅하 기(S11) • 예술가 프로그램 중 알고리즘을 디버깅하는 방법을 이해(동영상) • 예술가 프로그램 중 미완성 알고리즘(블록 9개)에서 거리이동블록(1개)의 거리를 수정하는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 8개)에서 거리이동블록(1개)의 거리 수정, 각도회전블록(1개)의 방향 수정, 각도회전블록 의 회전각도를 수정하는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 7개)에서 각도회전블록의 회전각도를 수정하는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 5개)에서 거리이동블록(1개)을 제거하는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 7개)에서 거리이동블록(1개)의 거리 수정, 거리이동블록(1개)를 거리점프블록으로 바꾸는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 5개)에서 거리이동블록(1개)의 거리 수정, 거리점프블록(1개) 추가, 각도회전블록(1개)의 방향을 바꾸는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 10개-중첩반복문)에서 반복블록(1개)의 반복횟수를 수정하는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 6개)에서 각도회전블록(1개)의 회전각도를 수정하는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 7개)에서 반복블록 안의 거리이동블록(1개)의 거리 수정하는 디버깅하기 • 예술가 프로그램 중 미완성 알고리즘(블록 11개)에서 반복블록(1개)의 반복횟수를 수정하는 디버깅하기 • 예술가 프로그램 중 원을 그리는 미완성 알고리즘 중 오류 부분 찾아내기(평가) 코스3 (5) 미완성 알고리즘에서 오류를 발견하여 if/else조건문 블록 수정, while반복 블록 수정, 함수블록 수정, 중첩반복블록을 수정하는 디 버깅하기(S14) • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 if/else조건문 블록(1개)를 수정하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 while반복블록(1개)를 수정하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 8개, 함수블럭 1개)에서 함수블록(1개)에 방향회전블럭(1개)를 추가하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 4개, 함수블럭 1개)에서 함수블록(2번)를 추가하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 9개, while함수 블럭이 포함된 함수블럭 1개)에서 while함수 블록(1개)을 수정하는 디버깅 하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 3개)에서 중첩반복블록(1개)의 반복횟수(1개)를 수정하고 전진블록(1개)를 추가하는 디버깅 하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 4개)에서 중첩반복블록(1개)의 반복횟수(2개)를 수정하는 디버깅하기 • 꿀 만들기 퍼즐 중 미완성 알고리즘(블록 5개)에서 중첩반복블록(1개)의 반복횟수 수정, 전진블록(1개) 추가와 반복블럭(1개)를 추가 하는 디버깅하기
  • 14. 생활 속의 알고리즘 코스1 ○ 현실 세계 상황 속에서 알고리즘을 이해, 표현하고 실행해보기 (1) 현실 속 사건을 시간 순서대로 분석하여 그림, 문장 알고리즘으로 표현하고 실행하기(S6) • 씨앗심기에 필요한 단계를 추출하고 알고리즘으로 표현 후 실제로 실행해보기(UN) • 이 닦기 알고리즘, 씨앗심기 알고리즘 중 빠진 단계를 찾아내기(평가) 코스2 (2) 어떠한 형태를 갖는 결과물을 얻기 위해서 필요한 단계를 알고리즘으로 표현하고 실행하기(S1, S2) • 모눈종이 그림을 문장 명령 알고리즘과 화살표 알고리즘으로 표현하고 이 알고리즘을 보고 모눈종이 그림을 나타내어보기(UN) • 종이비행기 접기 알고리즘을 떠올려 설명서를 만들고 설명서를 보고 종이비행기 접어보기(UN) • 도형이 조합된 그림을 보고 그 그림을 그리는 문장 알고리즘 표현하기 및 문장 알고리즘으로 그릴 수 있는 그림 찾기(평가) 코스3 (3) 현실 속 사건을 시간 순서대로 분석하여 알고리즘으로 표현해보고 이를 컴퓨터가 인식하는 알고리즘으로 바꾸어 생각해보기(S10) • 주사위 게임을 실제로 실행하면서 알고리즘을 떠올려보고 컴퓨터가 인식하는 알고리즘으로 바꾸어 생각해보기 • 알고리즘의 의미를 떠올려 알고리즘으로 나타낼 수 있는 것과 없는 것으로 구분하기(평가) 코스4 (4) 알고리즘을 갖는 어떠한 일을 사람과 컴퓨터가 의사소통하면서 처리하는 상황을 간접 경험해보기(S2) • 설명만 듣고 탱그램으로 주어진 그림을 완성하는 게임하기 만들기 코스1 ○ 프로그래밍을 통해 자신만의 창작물 만들기 (1) 프로그램을 이용한 간단한 이야기 만들기(S16) • Play Lap으로 이야기를 만드는 방법에 대한 이해(동영상) • 캐릭터 말하기 동작 블록을 사용하는 알고리즘 표현 • 캐릭터 움직이기 동작 블록을 사용하는 알고리즘 표현 • 이벤트 블록을 사용하는 알고리즘 표현 • 캐릭터 감정 표현 블록을 사용하는 알고리즘 표현 • 스피드 블록, 보이게 하기 블록 등 나머지 블록을 사용하는 알고리즘 표현 • Play Lap으로 이용하여 자신만의 이야기를 만들어보기 코스2 (2) 프로그래밍을 통해 간단한 게임 만들기(S16) • Flappy Bird로 게임을 만드는 방법에 대한 이해(동영상) • 이벤트 블록을 사용하여 게임을 시작하는 알고리즘 표현하기 • 이벤트 블록을 사용하여 게임을 종료하는 알고리즘 표현하기 • 소리 출력 블록, 스피드 블록을 사용하여 알고리즘 표현하기 • 이벤트 블록을 사용하여 점수를 얻는 알고리즘 표현하기 • 랜덤 배경 블록, 랜덤 캐릭터 블록을 사용하여 알고리즘 표현하기 • 이벤트 블록을 사용하여 점수를 잃는 알고리즘 표현하기 • 물체 설정 블록, 바닥 설정 블록, 중력 설정 블록 등을 사용하여 알고리즘 표현하기 • Flappy Bird를 이용하여 자신만의 게임을 만들어보고 인터넷상에 공유하기 (3) 프로그래밍을 통해 간단한 이야기 만들기(S17)(프로그램의 복잡성 상승) • 캐릭터 말하기 동작 블록을 사용하여 대화를 주고받는 알고리즘 표현 • 캐릭터 움직이기 동작 블록을 사용하여 캐릭터들이 움직이는 알고리즘 표현 • 캐릭터 랜덤 움직이기 동작 블록과 이벤트 블록을 사용하는 알고리즘 표현 • 캐릭터를 클릭하는 이벤트 블록을 사용하는 알고리즘 표현 • 각 방향키를 누르는 이벤트 블록을 사용하는 알고리즘 표현 • 무한반복 블록을 사용하는 알고리즘 표현 • 캐릭터끼리 닿는 이벤트 블록을 사용하는 알고리즘 표현 • 랜덤 배경 블록, 랜덤 속도 블록을 사용하는 알고리즘 표현 • Play Lap으로 이용하여 자신만의 이야기를 만들어보고 인터넷상에 공유하기 코스3 (4) 프로그래밍을 통해 바운스 게임 만들기(S15) • 각 방향키를 누르는 이벤트 블록을 사용하는 알고리즘 표현 • 라켓이 공이 부딪히는 이벤트 블록에 공 넘기기 블록, 소리 출력 블록을 연결하는 알고리즘 표현 • 벽에 공이 부딪히는 이벤트 블록에 공 넘기기 블록을 연결하는 알고리즘 표현 • 골대에 공이 들어가는 이벤트 블록에 점수 획득 블록을 연결하고 라켓이 공을 놓치는 이벤트 블록에 상대방 점수 획득 블록을 연 결하는 알고리즘 표현 • 공 스피드 블록, 랜덤 배경 블록, 라켓 스피드 블록을 사용하는 알고리즘 표현 • 자신만의 게임을 만들어보기
  • 15. 정보윤리 코스1 ○ 정보 보호에 관한 의식 갖기 (1) 온라인상에서 개인 정보 유출을 막는 방법에 대한 이해(S17 UN) • 개인 정보의 종류를 알아보고 사적인 정보를 담지 않고 인터넷 사이트를 활용하는 방법에 대해 알아보기 코스2 (2) 디지털 흔적에 대한 이해(S18 UN) • 온라인상의 정보를 통해 누군가를 찾아가는 과정을 통해 구체적이고 상세한 개인 정보를 남길수록 디지털 흔적이 많아진다는 사실 깨닫기 코스3 (3) 디지털시민(온라인상에서 안전하고 책임감 있고 존경스럽게 행동하는 사람) 의식(S20 UN) • 개인정보와 사적 정보의 차이점을 알고, 디지털 시민인 슈퍼 히어로를 만드는 게임을 통해 디지털 시민의식에 대해 인식하기 조작(행동) · 정의 · 인지적 능력 코스1 ○ 프로그래밍 시 필요한 조작 능력(S1,S2,S3) (1) 방향키 이해: 목표 지점으로 가기 위해 종이 화살표 배열해보기(UN) (2) 명령어 이해: 몸짓 명령어를 통해 목표지점으로 이동시키기(UN), 공통 언어인 화살표를 이용해 목표지점으로 이동시키기(평가) (3) 마우스의 드래그 앤 드롭 이해: 그림 전체 - 2분할 - 3분할 퍼즐 맞추기(붙어있지 않은, 붙어있는) - 블록 알고리즘 블록 맞추기 ○ 프로그래밍 시 가져야 할 정의적 능력(S9 UN) (4) 프로그래밍 시 인내심의 필요성 알기 • 여러 가지 물건을 사용하여 실패를 경험하면서 건물을 끝까지 만들어보기 코스3 ○ 프로그래밍 시 필요한 사고 능력(S9 UN) (5) 컴퓨터과학(정보과학)적 사고 - 분석, 패턴 맞추기, 추상화, 알고리즘 등 • 주어진 유사한 어구들의 동일한 부분을 파악하여 문장 패턴 맞추기 게임하기 인터넷과 클라우드 소싱 코스3 ○ 인터넷과 URL, IP, DNS 등의 개념과 원리에 인터넷 원리에 대해 이해하기 - 인터넷을 통하여 메시지를 보내는 과정을 이해하고 그 과정을 행동으로 표현해보기(UN) • URL과 IP주소의 상호 호환성을 이해하고 주어진 URL의 IP주소 선택하기[선다형] • URL과 IP주소의 상호 호환성을 이해하고 주어진 IP주소의 URL 선택하기[선다형] ○ 클라우드 소싱의 개념 이해하기 - 함께 협동하며 활동해봄으로써 클라우드 소싱의 개념을 이해하고 클라우드 소싱 연습하기(UN) • 클라우드 소싱을 이해한 후 이를 잘 표현하는 그림 선택하기[선다형] • 클라우드 소싱을 연습하기 좋은 대상 선택하기[선다형]