Chương trình cơ bản Dự kiến sẽ thiết kế các chương trình tập huấn như sau: Đối tượng CT ngắn hạn CT bình thường Chú thích Lớp 1, 2, 3 CT 6 buổi học 1.. Chương trình 18 buổi là theo cá
Trang 1Scratch: Đề ra kỳ này
Scratch: Giải bài kỳ trước
Trang 2Các chương trình đào tạo: lập trình Scratch cơ
bản & nâng cao
1 Chương trình cơ bản
Dự kiến sẽ thiết kế các chương trình tập huấn như sau:
Đối tượng CT ngắn hạn CT bình thường Chú thích
Lớp 1, 2, 3 CT 6 buổi học
1 Làm quen với Scratch
2 Các lệnh chuyển động
3 Vẽ đồ họa
4 Âm thanh, trống, biến nhớ
5 Hội thoại và truyền thông
6 Cảm biến
CT 15 buổi học Mỗi buổi học 1 chủ đề, kết thúc hoàn thiện 1 chương trình hoàn chỉnh
1 Con vật biết nói chuyện
2 Khám phá sân khấu
3 Cá bơi
4 Chim bay
5 Thú vật trong rừng
6 Con rùa vẽ
7 Vẽ vườn hoa
8 Mèo ăn Táo
9 Thầy giáo và em
10 Tranh luận trong lớp
11 Chương trình ca nhạc
12 Nháy chuột đánh bóng
13 Bút vẽ tự do
14 Máy tính của em
15 Thi chạy Marathon
Sẽ viết sách và bài viết cho chương trình 15 buổi
Lớp 3, 4, 5 CT 6 buổi học
1 Làm quen với Scratch
2 Các lệnh chuyển động
3 Vẽ đồ họa
4 Âm thanh, trống, biến nhớ
5 Hội thoại và truyền thông
6 Cảm biến
CT 12 buổi học
Kéo dài 1 buổi của CT ngắn gọn thành 2 buổi của
CT bình thường
Chương trình này
đã được thử nghiệm thực tế nhiều lần, rất hiệu quả
Trang 3Đối tượng CT ngắn hạn CT bình thường Chú thích
THCS + THPT Chương trình 6 buổi học:
1 Làm quen với Scratch
2 Các lệnh chuyển động
3 Vẽ đồ họa
4 Âm thanh, trống, biến nhớ
5 Hội thoại và truyền thông
6 Cảm biến
CT 18 buổi học Chương trình như sau (theo cuốn sách Tự học lập trình Scratch)
1 Làm quen với Scratch
2 Thao tác với nhân vật và nền sân khấu
3 Chuyển động 1
4 Đồ họa 1
5 Âm thanh 1
6 Chuyển động 2
7 Đồ họa 2
8 Âm thanh 2
9 Hội thoại, biến nhớ
10 Hội thoại, truyền thông
11 Cảm biến 1
12 Cảm biến 2
13 Xử lý số 1
14 Xử lý xâu ký tự 1
15 Xử lý số 2
16 Xử lý xâu ký tự 2
17 List 1
18 List 2
Chương trình 18 buổi là theo các bài học của cuốn sách
Tự học lập trình Scratch
Chú ý sẽ giảng dạy đơn giản hơn nội dung của sách
Giáo viên (Tin
học)
Ct 3 buổi
1 Giới thiệu môi trường lập trình Scratch
2 Hội thoại; Truyền thông;
Cảm biến
3 Thiết kế phần mềm giáo dục đơn giản
CT 6, 9 hoặc 12 buổi
Kéo dài 1 buổi của CT ngắn gọn thành 2 hoặc 3 buổi học bình thường
Giáo viên
(thường)
CT 3 buổi
1 Giới thiệu môi trường lập trình Scratch
CT 15 buổi học theo chủ đề sau:
1 Làm quen với Scratch
2 Nhân vật, nền sân khấu
Chương trình 15 buổi cũng sẽ là chương trình chuẩn, "xóa mù"
Trang 4Đối tượng CT ngắn hạn CT bình thường Chú thích
2 Hội thoại; Truyền thông;
Cảm biến
3 Thiết kế phần mềm giáo dục đơn giản
3 Nhân vật nói và suy nghĩ
4 Khám phá sân khấu
5 Điều khiển nhân vật bằng chuột và bàn phím
6 Trò chơi đầu tiên
7 Chế độ vẽ trong Scratch
8 Bút vẽ tự do
9 Vẽ đa giác đều, vòng tròn, bông hoa
10 Cảm biến
11 Hội thoại người - máy
12 Truyền thông và thông điệp
13 Quan hệ giữa nhân vật
và sân khấu
14 Thông điệp hay biến nhớ
15 Thiết kế trò chơi giáo dục
lập trình cho mọi đối tượng
Trang 52 Chương trình nâng cao
Các topic nâng cao
- Thủ tục
- Xử lý số nâng cao
- Xử lý xâu nâng cao
- Xử lý dãy số nâng cao
- Một số thuật toán cơ bản về số và dãy số
- Clone
- Thiết kế trò chơi và phần mềm
Mỗi chương trình nâng cao sẽ có thời gian từ 6 - 24 buổi học, phân loại theo các đối
tượng: Tiểu học (lớp 3, 4, 5), THCS-THPT, Giáo viên Tin học và Giáo viên thường
Đối tượng CT chuẩn 1 (ngắn gọn) CT chuẩn 2 (bình thường) Chú thích Lớp 3, 4, 5 Chương trình 8 buổi:
1 Các cấu trúc điều khiển
2 Biến nhớ và dữ liệu
3 Nhân vật - Sân khấu - Âm thanh
4 Hội thoại và truyền thông
5 Thủ tục
6 Xử lý số và xâu ký tự
7 Biến nhớ List
8 Clone
Chương trình 16 buổi:
Mỗi bài của chương trình ngắn hạn được dạy trong 2 buổi học
THCS-THPT
Chương trình 8 buổi:
1 Các cấu trúc điều khiển
2 Biến nhớ và dữ liệu
3 Nhân vật - Sân khấu - Âm thanh
4 Hội thoại và truyền thông
5 Thủ tục
6 Xử lý số và xâu ký tự
7 Biến nhớ List
8 Clone
Chương trình 16 hoặc 24 buổi
Mỗi bài của chương trình ngắn hạn được kéo dài dạy trong 2 hoặc 3 buổi học
Với các chương trình này phần cuối sẽ có nội dung thiết kế phần mềm
Trang 6Đối tượng CT chuẩn 1 (ngắn gọn) CT chuẩn 2 (bình thường) Chú thích Giáo viên
Tin học
Chương trình 6 buổi:
1 Thủ tục
2 Biến nhớ và dữ liệu
3 Xứ lý số và xâu ký tự
4 Làm việc với List
5 Kỹ thuật làm việc với trang phục và nền sân khấu
6 Clone
Chương trình 20 buổi
1 Cấu trúc điều khiển, sự kiện, cảm biến
2 Xử lý số 1
3 Xử lý xâu ký tự 1
4 Xử lý số 2
5 Xử lý xâu ký tự 2
6 List 1
7 List 2
8 Thủ tục 1
9 Thủ tục 2
10 Lập trình đệ qui
11 Clone 1
12 Clone 2
13 Một số kỹ thuật dùng trong thiết kế phần mềm 1
14 Một số kỹ thuật dùng trong thiết kế phần mềm 2
15 Thiết kế 1 số trò chơi với số
1
16 Thiết kế 1 số trò chơi với số
2
17 Thiết kế 1 số trò chơi với chữ 1
18 Thiết kế 1 số trò chơi với chữ 2
19 Thiết kế trò chơi tổng hợp 1
20 Thiết kế trò chơi tổng hợp 2
Giáo viên
thường
Chương trình 10 buổi:
1 Các cấu trúc điều khiển
2 Biến nhớ và dữ liệu
3 Nhân vật - Sân khấu - Âm thanh
4 Hội thoại và truyền thông
Chương trình 20 buổi
Mỗi bài của chương trình ngắn hạn được dạy trong 2 buổi học
Trang 7Đối tượng CT chuẩn 1 (ngắn gọn) CT chuẩn 2 (bình thường) Chú thích
5 Thủ tục
6 Xử lý số và xâu ký tự
7 Biến nhớ List
8 Clone
9 Thiết kế bài học và phần mềm giáo dục
10 Thiết kế trò chơi và phần mềm
Trang 8Chuyên mục này sẽ có thường xuyên trên CS4S Đề ra kỳ này bao gồm các bài tập lý thuyết cũng như thực hành, liên quan đến phân môn Khoa học máy tính trong nhà trường Sẽ có các phần Đề bài và Lời giải Riêng các bài tập lập trình sẽ được ghi rõ yêu cầu cần làm trên ngôn ngữ cụ thể nào
Bài 7 Binary presentation Giáo viên
Phần mềm, trò chơi Binary presentation dành cho HS luyện tập kỹ năng biến đổi số thập phân sang nhị phân Các phần mềm học tập dạng này các GV rất nên học cách thiết kế Phần mềm được chạy như 1 trò chơi như sau:
Trên màn hình sẽ luôn tự động sinh một số tự nhiên trong khoảng 0 255, nhiệm vụ của HS là phải chuyển đổi số này sang nhị phân Trên màn hình sẽ xuất hiện 8 mảnh
số với các số mặc định là 0 HS chơi bằng cách nháy lên các hình số này, khi nháy lên thì số 0 sẽ biến thành 1 và ngược lại
Khi làm xong, người chơi nháy nút kiểm tra , nếu đúng phần mềm thông báo Đúng, nếu sau thông báo Sai và nút kiểm tra sẽ đổi hình dạng thành các nút ,
Nếu làm đúng người chơi được thưởng 1 điểm, ngược lại nếu làm sai bị trừ 1 điểm
Scratch:
Đề ra kỳ này
Trang 9Bài 8 Cờ đỏ sao vàng Tiểu học, THCS
Viết chương trình vẽ lá cờ đỏ sao vàng như hình sau:
Một số thông số của lá cờ:
- Chiều cao 200, chiều rộng 300
- Khoảng cách từ tâm đến 1 đỉnh của ngôi sao: 60
Chú ý: trong Scratch không có lệnh tô màu, vậy các bạn cần nghĩ ra một "thuật toán"
đủ tốt để làm bài tập này
Trang 10BÀI 1: 4 nhân vật Tiểu học
Thiết kế chương trình, ban đầu có 4 nhân vật: Mèo, Cánh Cam, Chuột, Chó được
xếp hàng tại vị trí ban đầu như hình sau Chương trình như sau: 4 con vật này sẽ chạy
1 vòng xung quanh sân khấu theo chiều ngược kim đồng hồ, và về đúng vị trí cũ thì dừng lại Yêu cầu là các con vật chuyển động luôn xếp hàng sát nhau như thế này
Lời giải
Bài tập này nằm trong phần kiến thức các lệnh chuyển động của Scratch Chúng ta sẽ
sử dụng lệnh glide to để mô tả các con vật chuyển động Ví dụ sau đây là 1 cách giải
Chúng ta kẻ 1 khung chữ nhật (tưởng tượng) trên màn hình như hình dưới đây và sẽ điều khiển các con vật chuyển động theo khung này, ngược kim đồng hồ, lần lượt đi qua các điểm A, B, C, D và quay trở lại vị trí cũ Điểm khó nhất phải tính là làm sao
để các con vật luôn nối đuôi nhau như trong hình Tọa độ các điểm A, B, C, D có thể như hình sau Chú ý với mỗi người có thể các tọa độ này sẽ khác nhau
Scratch: Lời giải kỳ trước
A = (150, -80)
B = (150, 120)
C = (-165, 120)
D = (-165, -80)
Trang 11Vị trí ban đầu của các nhân vật của chúng ta là: Mèo (-165, -80); Cánh cam (-20, -80); Chuột (-90, -80); Chó (85, -80)
Mỗi nhân vật sẽ phải dịch chuyển bằng lệnh glide to lần lượt như sau:
từ vị trí ban đầu đi đến A, từ A đến B, từ B đến C, từ C đến D, từ D về vị trí ban đầu
Giả sử thời gian đi trên mỗi cạnh là 2 giây, khi đó cần chú ý nhất đến thời gian từ vị trí ban đầu đến A và từ D về vị trí ban đầu phải có tổng = 2 giây Ví dụ đối với nhân vật
Chó thì thời gian đi từ vị trí ban đầu đến A là 0.5 giây, thời gian đi từ D về vị trí ban
đầu phải là 1.5 giây
Bảng sau mô tả chi tiết các lệnh điều khiển của từng nhân vật Chú ý đến thời gian các con vật này đi đến A và từ D về vị trí ban đầu của mình
0.5 giây / 1.5 giây 1 giây / 1 giây 1.5 giây / 0.5 giây 2 giây / 0 giây
Thời gian đi từ vị trí ban đầu đến A là 0.5s
Thời gian đi từ D về vị trí ban đầu là 1.5s
Thời gian đi các đoạn đường A->B, B->C, C->D đều là 2 giây
Trang 12BÀI 2: Đường cong Koch (dành cho bậc THCS, nâng cao)
Thiết kế chương trình chỉ cần 1 thủ tục có thể vẽ được các đường cong Koch với độ phức tạp khác nhau như các hình dưới đây
Yêu cầu viết 1 thủ tục có dạng Koch-Curve với tham số là level - số mức của đường
cong này Tương ứng hình trên là các mức level = 3, 2, 1 của thủ tục này
Lời giải
Nếu để ý 1 chút chúng ta sẽ thấy mỗi đường cong Koch thực chất là gộp của 3 đường cong Koch đơn giản Ví dụ trong hình sau, đường cong Koch hoàn chỉnh sẽ bao gồm
3 đường Koch đơn giản là AC, CB và BA
Do vậy cần thiết kế 2 thủ tục: 1 cho đường cong Koch hoàn chỉnh và 1 cho đường Koch đơn giản
Đường cong Koch hoàn chỉnh sẽ gọi 3 lần đường cong Koch đơn giản, như sau:
C
Lần lượt gọi 3 lần thủ tục vẽ đường cong Koch đơn giản, tương ứng với các lệnh vẽ AC, CB, BA
Chú ý trước mỗi lần gọi thủ tục cần quay hướng chính xác
Thủ tục vẽ đường cong Koch hoàn chỉnh
Trang 13Bây giờ chỉ cần thiết kế thủ tục cho đường cong Koch đơn giản (ví dụ đường cong xuất phát từ A và kết thúc tại C)
Thủ tục này sẽ có 2 tham số: d và level
Đoạn chương trình chính của chương trình gọi thủ tục KochCurve_Full như sau:
Với các giá trị khác nhau của tham số Level, chương trình sẽ vẽ các đường cong Koch với độ phức tạp khác nhau
Kết quả thực hiện thủ tục chính tương ứng với các mức Level = 4, 5, 6
Với level = 0, đơn giản là vẽ 1 đường thẳng có độ dài d
Với level > 0, thủ tục sẽ
lần lượt gọi 4 lần thủ tục
đệ qui với mức level - 1,
vẽ 4 đoạn thẳng gấp khúc
là đặc trưng của đường cong Koch
Thủ tục vẽ đường cong Koch đơn giản
Trang 14Đây là màn hình lệnh chính của chương trình
Chú ý chương trình có 1 nhân vật duy nhất, nhân vật này sẽ ẩn trong suốt quá trình thực hiện