You are on page 1of 18

Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin

học trẻ.”

A. ĐẶT VẤN ĐỀ
I. LÝ DO CHỌN ĐỀ TÀI.
Trên thế giới ngày nay sự hình thành và phát triển của khoa học kỹ thuật ngày càng
mạnh đặc biệt là sự phát triển nhảy vọt của ngành Công nghệ thông tin (CNTT). CNTT đã
tác động lớn đến công cuộc phát triển kinh tế xã hội loài người. Đảng và Nhà nước đã xác
định rõ ý nghĩa và tầm quan trọng của Tin học và CNTT, truyền thông cũng như những yêu
cầu đẩy mạnh ứng dụng CNTT, đào tạo nguồn nhân lực đáp ứng yêu cầu Công nghiệp hóa,
hiện đại hóa, hướng tới nền kinh tế tri thức của nước ta nói riêng và toàn thế giới nói chung.

Chính vì xác định được tầm quan trọng đó nên Nhà nước ta đã đưa môn Tin học vào
trong nhà trường và ngay từ cấp tiểu học, học sinh được tiếp xúc với môn Tin học để làm
quen dần với lĩnh vực CNTT, tạo nền móng cơ sở ban đầu để học những phần nâng cao
trong các cấp học tiếp theo.

Cùng với việc môn tin học được đưa vào chương trình tiểu học, thì một sân chơi mới
mẻ, hấp dẫn được phát triển - Hội thi “Tin học trẻ ” hứa hẹn là một ngày hội lớn cho những
ai yêu thích tin học, cũng như là một thách thức cho các thí sinh. Chất lượng hội thi ngày
càng cao thì chất lượng thí sinh tham gia cũng càng ngày càng được nâng lên. Thí sinh phải
giỏi hơn, sáng tạo hơn, toàn diện hơn. Thí sinh phải có kĩ năng sử dụng phần mềm tốt, vừa
phải có tư duy tốt. Thí sinh vừa phải có kiến thức cơ bản về máy tính, một số phần mềm cơ
bản vừa phải biết ứng dụng một số phần mềm cơ bản để phục vụ cho một số công việc nhất
định, ví dụ như là sử dụng phần mềm Paint để vẽ tranh , sử dụng phần mềm Powerpoint
2007 trở lên để trình chiếu đơn giản một chủ đề, hay lập trình trong phần mềm MSWLogo.
Đặc biệt, trong những năm gần đây các câu về MSWLogo chiếm đa số trong một đề thực
hành tin học trẻ. Trong khi đó, học sinh tiểu học tiếp cận với nội dung về phần mềm
MSWLogo trong sách Tin học quyển 2 và quyển 3 còn hạn chế.

“Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học
trẻ” nêu lên một số biện pháp nhằm bồi dưỡng học sinh năng khiếu Tin học về lập trình
MSWLogo. Giúp học sinh tìm hiểu thêm về các lệnh trong MSWLogo, các dạng bài tập về
MSWLogo. Cũng như là mang đến hội thi “Tin học trẻ” những thí sinh có chất lượng. Để
đạt được mục tiêu ấy, bản thân tôi không ngừng học hỏi, tìm tòi, nghiên cứu để hoàn thành
đề tài sáng kiến kinh nghiệm này.

Sáng kiến kinh nghiệm 2016 - 2017


Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”

II. MỤC ĐÍCH, NHIỆM VỤ NGHIÊN CỨU.

1. MỤC ĐÍCH.
- Nghiên cứu cơ sở lý luận và cơ sở thực tiễn của đề tài.
- Đề ra cách chọn ra những học sinh có năng khiếu môn Tin học.
- Nêu lên nội dung bồi dưỡng học sinh giỏi Tin học về lập trình MSWLogo.

- Đưa ra một số phương pháp bồi dưỡng học sinh giỏi Tin học về lập trình
MSWLogo.

2. NHIỆM VỤ.

- Đề tài tìm hiểu các nội dung, phương pháp tổ chức bồi dưỡng lập trình
MSWlogo cho học sinh Tiểu học.

III. ĐỐI TƯỢNG, PHẠM VI NGHIÊN CỨU.

1. ĐỐI TƯỢNG NGHIÊN CỨU.


Nghiên cứu Nội dung và phương pháp tổ chức bồi dưỡng lập trình phần mềm
MSWLogo cho học sinh dự thi Tin học trẻ
2. PHẠM VI NGHIÊN CỨU.

Áp dụng đối với học sinh khối 5 và dành cho học sinh có năng khiếu môn Tin
học.
IV. PHƯƠNG PHÁP NGHIÊN CỨU.
Đề tài của tôi trình bày dựa theo các luận cứ khoa học hướng đối tượng, cụ thể:
thuyết trình minh họa, làm mẫu, phân tích kết quả thực nghiệm … phù hợp với nội dung
chuyên đề.
V. GIẢ THIẾT KHOA HỌC.

Nếu giáo viên biết lựa chọn biện pháp để bồi dưỡng lập trình cho học sinh thì kÜ
n¨ng lập trình MSWlogo được nâng cao lên.
VI. ĐÓNG GÓP MỚI CỦA ĐỀ TÀI.

Đề tài đưa ra được các biện pháp hữu hiệu cũng như một số kiến thức mới trong lập
trình MSWlogo dành cho học sinh dự thi tin học trẻ.

VII. THỜI GIAN NGHIÊN CỨU.

Thời gian tôi áp dụng kinh nghiệm này kể từ tháng 9 năm 2016 đến tháng 5 năm 2017
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”

B. GIẢI QUYẾT VẤN ĐỀ

I. CƠ SỞ LÝ LUẬN.
MSWLogo là phần mềm được thiết kế và phát triển vào những năm 60 của thế kỷ
trước bởi Seymour Papert, Daniel Bobrow và Wallace Feurzeig tại phòng thí nghiệm trí
tuệ nhân tạo của MIT(Học viện công nghệ Masachusetts).

Giáo sư Seymour Papert là tác giả chính của MSWLogo, ông là nhà khoa học trí
tuệ nhân tạo nổi tiếng thế giới. Vào tháng 12 năm 2006, ở tuổi 78, ông sang Việt Nam để
tham dự một hội nghị quốc tế về phương pháp giảng dạy toán học bằng công nghệ thông
tin được tổ chức tại Đại học Bách Khoa Hà Nội…

MSWLogo là phần mềm máy tính giúp các em vừa học, vừa chơi. Các em học
viết các dòng lệnh điều khiển chú Rùa di chuyển trên màn hình. Rùa dùng bút vẽ lại vết
đoạn đường đã đi qua. Nó là công cụ đúng nghĩa để hỗ trợ thực hiện việc học và suy
nghĩ bằng cách khuyến khích các em khám phá.

II. CƠ SỞ THỰC TIỂN.

Ngay từ đầu năm học, đa số các em học sinh lớp 5 đã có một số kiến thức căn bản
về phần mềm MSWLogo. Bên cạnh đó, với vai trò của giáo viên đứng lớp, trực tiếp
chọn và bồi dưỡng học sinh năng khiếu, tôi thấy mình cần phải đầu tư nghiên cứu tìm ra
phương pháp phù hợp nhất để giảng dạy cho học sinh của mình, đặc biệt là tìm hiểu
thêm các lệnh mới, các dạng bài tập để có em được tiếp cận nhiều hơn về phần mềm
MSWLogo.

III. THỰC TRẠNG VẤN ĐỀ.


Trong những năm gần đây dạy học tin học ở tiểu học đã từng bước đi vào quy cũ,
chất lượng giảng dạy của giáo viên cũng như học tập của học sinh đã bước đầu có kết
quả. Môn tin học bắt đầu có vị trí trong trường tiểu học.
Tuy nhiên trong quá trình trực tiếp giảng dạy tin học ở trường tôi nhận thấy còn có
những thuận lợi và khó khăn sau:
1. Thuận lợi.

Sáng kiến kinh nghiệm 2016 - 2017


Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
* Nhà trường: - Tuy môn Tin học là môn học tự chọn nhưng nhà trường đã tạo
điều kiện để học sinh có thể học từ khối 3, khối 4, khối 5 mua sắm máy móc và trang
thiết bị phục vụ cho việc dạy và học môn Tin học.

- Được sự ủng hộ của các cấp uỷ - UBND - các ban ngành, các nhà tài trợ, phụ
huynh học sinh toàn trường hỗ trợ cơ sở vật chất cho nhà trường.

* Giáo viên: - Giáo viên được đào tạo những kiến thức cơ bản về Tin học để đáp
ứng yêu cầu cho việc dạy và học môn Tin học ở tiểu học. Bản thân chịu khó tìm tòi, thu
thập được một số tài liệu để bồi dưỡng học sinh của mình.

* Học sinh: - Vì là môn học trực quan, sinh động, môn học khám phá những lĩnh
vực mới nên học sinh rất hứng thú học, nhất là những tiết thực hành.

2. Khó khăn

* Nhà trường: - Trường Tiểu học đã có phòng máy vi tính để cho học sinh học
nhưng vẫn hạn chế, ít máy tính để học sinh thực hành, 3 - 4 em một máy tính, máy tính
có cấu hình thấp . Vì vậy cũng gây một số khó khăn cho việc học tập của học sinh cũng
như bồi dưỡng nâng cao cho học sinh.

* Giáo viên: - Trên địa bàn huyện, tin học là môn học tự chọn đối với học sinh,
giáo viên dạy tin tiểu học chủ yếu tăng cường từ trung học cơ sở xuống, tài liệu tham
khảo về phần mềm MSWLogo rất ít, nội dung về phần mềm MSWLogo trong sách thì
hạn chế, giáo viên phải tự tìm tòi, nghiên cứu các tài liệu nước ngoài.

* Học sinh: - Học sinh là người địa phương, điều kiện kinh tế còn khó khăn nên
tiếp cận CNTT còn chậm vì thế học sinh năng khiếu tin học rất ít, học sinh chưa quan
tâm đến môn tin học . Muốn giải quyết các bài về MSWLogo học sinh không những
phải dùng máy tính tốt, mà còn cần phải có tư duy thật tốt. Học sinh đủ điều kiện thì
hoàn cảnh gia đình không có máy tính.

* Phụ huynh: - Tin học chỉ là môn học tự chọn, phụ huynh chưa đánh giá được
tầm quan trọng của CNTT nên còn lơ là trong việc quan tâm, đầu tư cho các em.

IV. BIỆN PHÁP THỰC HIỆN

Ngay từ đầu mỗi năm học tôi đã lập ra kế hoạch, xây dựng nội dung bồi dưỡng và
thời gian chi tiết cho từng nội dung. Nội dung trọng tâm trong toàn bộ kế hoạch đó là:

Sáng kiến kinh nghiệm 2016 - 2017


Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
1. Chọn học sinh năng khiếu.

Dựa vào các tiêu chí như sau:

- Học sinh có thái độ học tập tích cực – đây là điều kiện tiên quyết.

- Học sinh có niềm đam mê, có năng khiếu với môn tin học (có những kiến thức
cơ bản về máy tính và kĩ năng sử dụng bàn phím, chuột tốt, có tư duy) – điều kiện quan
trọng nhất.

- Học giỏi các môn học khác như: Toán, Mĩ thuật, Tiếng việt, Anh văn …

- Gia đình có tâm huyết và tạo điều kiện tốt để con em mình phát huy hết năng
khiếu.

2. Nội dung bồi dưỡng


Trọng tâm của thời gian bồi dưỡng là học sinh lập trình trên phần mềm
MSWLogo.
a) Giới thiệu về MSWLogo.

Màn hình của MSWLogo:

b. Lệnh cơ bản trong MSWLogo

CÔNG VIỆC LỆNH TẮT GHI CHÚ

Rùa về vị trí xuất phát (chính giữa nếu không nhấc bút sẽ có nét
HOME
sân) vẽ

Sáng kiến kinh nghiệm 2016 - 2017


Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
Xóa toàn bộ sân chơi, Rùa về vị trí xuất
CS
phát.

Xóa màn hình, Rùa vẫn ở vị trí hiện màu, nét không thay đổi
CLEAN
tại

Rùa tiến về phía trước n bước FD n

Rùa lùi lại n bước BK n

Rùa quay trái k độ LT k

Rùa quay phải k độ RT k

Nhấc bút PU

Hạ bút PD

Ẩn Rùa HT khi muốn vẽ nhanh

Hiện Rùa ST

Thoát khỏi phần mềm LOGO BYE

Lặp lại n lần [các lệnh ] REPEAT n [các Các lệnh đặt trong cặp
lệnh ] ngoặc vuông

Rùa tạm dừng n tíc WAIT n 60 tíc = 1 giây

Xóa nội dung trong cửa sổ ClearText (xóa luôn cả lệnh


CT
Commander CT này)

Vẽ đường tròn bán kính R Rùa không di chuyển (đứng yên


Circle R
ở tâm)

Vẽ đường tròn bán kính R Rùa di chuyển theo nét vẽ (trên


Circle2 R
đường tròn)

Vẽ hình oval có bán kính ngang R1, bán Rùa không di chuyển (đứng yên
Ellipse R1 R2
kính dọc R2 ở tâm)

Vẽ hình Oval có bán kính ngang R1, Rùa di chuyển (trên đường
Ellipse2 R1 R2
bán kính dọc R2 Ellipse)

Vẽ cung góc A, bán kính R Vẽ theo chiều kim đồng hồ, xuất
Arc A R phát từ sau lưng Rùa
Rùa ở tâm, không di chuyển

Vẽ cung góc A, bán kính R Vẽ theo chiều kim đồng hồ, xuất
Arc2 A R phát từ sau lưng Rùa
Rùa di chuyển theo nét vẽ

Sáng kiến kinh nghiệm 2016 - 2017


Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”

Đặt độ dày nét vẽ SetPenSize Vd : SetPenSize [5 5], nên đặt 2


[Rộng Cao] gtrị bằng nhau

Đặt màu bút vẽ (Pen Color) SetPC Số hiệu 16 màu chuẩn : số hiệu 0 
màu 15

Đặt màu tô (Fill Color) SetFC Số hiệu 16 màu chuẩn : số hiệu 0 


màu 15

Tô ruột hình khép kín (Rùa phải ở PU Fd 10 SetFC 4 FILL


trong vùng muốn tô, nhấc lên vẫn tô (SGK-quyển 3 dùng cách vẽ
được- lệnh tô cuối phải hạ Rùa tránh nhiều nét màu sát nhau để tô 
loang màu ở lần chạy sau) Fill
phải dùng nhiều lệnh  chậm,
tốn bộ nhớ và chỉ tô được một
số hình đơn giản)

Đang ở góc bất kỳ, Rùa đứng tại vị trí SETH k Hướng chuẩn là hướng từ dưới lên
đó xoay đầu trở về hướng chuẩn rồi được tính là 0 độ và tăng theo
quay k độ so với hướng chuẩn. chiều kim đồng hồ.

Xuất chữ, chữ số hoặc giá trị của 1 biến - Màu chữ : Set > PenColor
ra màn hình từ vị trí Rùa đứng, theo Label “Một từ - Kiểu chữ : Set > Label Font
hướng của đầu Rùa (hiểu Tiếng Việt
bảng mã VNI, TCVN3 – ko hỗ trợ Label [Nhiều từ]
Unicode)
- Thay ñoåi ñoä daøy/moûng neùt buùt duøng leänh : Set > PenSize
- Ñoåi maøu buùt veõ, maøu chöõ duøng leänh : Set > PenColor

c. Các thủ tục trong logo


b.2.1. Cấu trúc của thủ tục:
To tenthutuc
{ các lệnh}
End.
b.2.2 Cách tạo và gọi tên thủ tục/
- Cách tạo.
Edit “ tenthutuc
- Gọi thủ tục
Gõ tên thủ tục
- Cách lưu thủ tục.
File/ save and exit
- Cách lưu thành tệp ảnh.
Bitmap/ save
d. Sử dụng biến trong phần mềm Logo.
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
* Khái niệm về biến.

Biến là đại lượng có thể thay đổi giá trị của nó.

Tại sao phải dùng biến? Có thể hiểu một cách đơn giản: Dùng biến để đảm bảo tính tổng
quát của một dạng bài toán. Sau này khi sử dụng thành thạo, ta sẽ thấy còn nhiều trường hợp khác
cũng phải dùng đến biến.

* Cách khai báo biến trong thủ tục.

- Đối với các biến nhận giá trị trực tiếp từ bên ngoài.

Ví dụ: Bạn Mai có 20 cái kẹo, Mai cho Minh 5 cái, sau đó Mai ăn hết 3 cái. Hỏi Mai còn
lại mấy cái kẹo?.
Trong bài toán tính số kẹo như trên, các biến a, b, c sẽ được đưa vào từ bên ngoài để
chương trình thực hiện tính toán, khi đó ta sẽ khai báo các biến này cùng dòng với dòng ghi tên
thủ tục bằng cách ghép dấu hai chấm (:) ngay trước tên biến.

TO KEO :a :b :c

Lúc này, các biến a, b, c sẽ trở thành các giá trị để thực hiện các biểu thức có trong thủ tục:

TO KEO :a :b :c
CS
RT 90 LABEL [ So keo con lai la:]
PU FD 250 FD LABEL :a - :b - :c
END

- Đối với các biến nhận giá trị trong khi chạy thủ tục.
Trường hợp các biến nhận giá trị từ một biểu thức có trong thủ tục, ta khai báo theo cú
pháp sau:
MAKE '' < Tên_biến> < Biểu_thức>
Ví dụ : Vẽ hình tròn với bán kính 100
Make “ BK 100
Circle :BK
e. Cấu trúc các lệnh.
- Vòng lặp REPEAT.
Cú pháp: REPEAT số lần lặp [ Các công việc thực hiên]
Ý nghĩa: Thực hiện các công việc theo số lần lặp
Ví dụ: Caâu leänh veõ Baùt giaùc ñeàu : REPEAT 8 [ FD 100 RT 45 ]
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
Coâng thöùc veõ Ña giaùc ñeàu n caïnh : REPEAT Soá caïnh [ FD
Ñoä daøi caïnh RT 360/Soá caïnh ]
- Vòng lặp For:
Cú pháp: For [Tên biến_giá trị bắt đầu_giá trị kết thúc_bước tăng] [Công
việc thực hiện]
Ý nghĩa: Thực hiện công việc với số lần lặp = (( Giá trị bắt đầu – giá trị kết
thúc)/bước tăng ) + 1.
Ví dụ: For [i 50 100 10] [ circle :i]
- Các mệnh đề điều kiện
IF
Cú pháp: IF điều kiện [ Các công việc]
Ví dụ: IF :a>:b [ label :a]
IFELSE
Cú pháp: IFELESE điều kiện [công việc 1] [công việc 2]
Ý nghĩa: Thực hiện công việc 1 trong trường hợp mệnh đề điều đúng và
thực hiện công việc 2 nếu mệnh đề điều kiện sai.
IFTRUE
Cú pháp: IFTRUE điều kiện [công việc]
Ý nghĩa: Thực hiện công việc nếu lệnh TEST trước đó nhận một mệnh đề
có giá trị true.
IFFALSE
Cú pháp: IFFALSE điều kiện [công việc]
Ý nghĩa: Thực hiện công việc nếu lệnh TEST trước đó nhận một mệnh đề
có giá trị false.

f. Mảng và cách sử dụng.


- Khai báo mảng:
Make “ tên mảng (array độ dài số bắt đầu)
Ví dụ: Cho dãy số sau: 1,4,6,7,2,3,6,7,6.
Make “ dayso (array 9)
- Gán giá trị cho mảng:
SETITEM vị trí: tên mảng giá trị.
Ví dụ:
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
Setitem 1 :dayso 1
Setitem 2 :dayso 4
Setitem 3 :dayso 6
Setitem 4 :dayso 7
………………….
Setitem 9 :dayso 6
- Lấy giá trị trong mảng:
ITEM vị trí :tên mảng.
Ví dụ:
item 1 :dayso ( lấy giá trị đầu tiên của dãy số trên).
g. Cách viết các lệnh một số dạng toán về MSWLogo.
* Dạng sử dụng các lệnh để vẽ hình.
Phân tích đề ra:
- Đọc kĩ yêu cầu của đề ra.
- Quan sát kĩ quy luật của hình vẽ. (xác định xem hình này gồm những
hình gì, được tạo ra từ bao nhiêu hình, quy luật của các hình)
- Chú ý hướng con trỏ Rùa.
Thực hiện viết lệnh vẽ.
- Sau khi phân tích được đề ra xong hướng dẫn các em tiến hành thực
hiện các lệnh vẽ hình.
Ví dụ: Hình lục giác
Hình bên được tạo thành
từ các hình lục giác đều có
cạnh là 100 đơn vị. Em hãy
viết thủ tục tên lucgiac để vẽ hình này.

- Phân tích đề ra:


+ Quan sát hình vẽ này ta thấy được tạo ra từ 6 hình lục giác đều ( 6 cạnh).
+ Áp dụng công thức đa giác đều
Thực hiện viết lệnh vẽ.
To lucgiac
Repeat 6[ repeat 6[fd 100 rt 60] rt 60]
end

* Dạng giải toán bằng lặp trình MSWLogo


Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
Phân tích đề ra:
- Đọc kĩ yêu cầu của đề ra.
- Cần biết được cách giải bài toán đó ( thuật toán của bài toán đó)
- Khai báo biến
Thực hiện viết các lệnh.
- Sau khi phân tích được đề ra xong hướng dẫn các em tiến hành thực hiện các
lệnh.
Ví dụ: Vừa gà vừa chó
Bó lại cho tròn
Ba mươi sáu con (36 con)
Một trăm chân chẵn (100 chân)
Hỏi có bao nhiêu gà, chó?
Phân tích đề ra:
Ở đây ta lợi dụng sức mạnh của máy tính để thử tất cả các trường hợp bằng 2 vòng lặp
For, ta sẽ thử lần lượt từng trường hợp 1:
1 con gà 1 con chó
1 con gà 2 con chó
1 con gà 3 con chó
1 con gà 4 con chó
1 con gà 5 con chó
…..
1 con gà 35 con chó
2 con gà 1 con chó
2 con gà 2 con chó
2 con gà 3 con chó
2 con gà 4 con chó
2 con gà 5 con chó
…. trường hợp nào thỏa điều kiện Gà + chó =36 (cái đầu) và 2*chân gà + 4*Chân chó
=100 (cái chân) thì hiện ra kết quả số gà và chó
Câu lệnh.
To GaCho
CS
CT
Rt 90
PU
For [ga 1 36 1][
For [cho 1 35 1][
IF and (:ga+:cho=36)(2*:ga+4*:cho=100) [
Label (List “Co :ga “con “ga “va “co :cho “con “cho) ]
]]
End

h. Một số bài tập về MSWLogo.


Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
Bài 1. Hình vuông ( Đề thi tin học trẻ cấp huyện 2015 - 2016)
Hình bên được tạo thành từ những hình vuông
có kích thước 100 đơn vị. Em hãy tìm một cách
vẽ và viết các câu lệnh trong chương trình
MSWLogo để vẽ hình này.
Em hãy lưu kết quả trong tệp văn bản có tên hinhvuong.doc gồm:
- Hình mà em đã vẽ (mỗi bước Rùa di chuyển là một đơn vị).
- Các câu lệnh của MSWLogo theo trình tự đã vẽ.

Câu lệnh.
to hinhvuong
rt 45 repeat 6[repeat 4[fd 100 rt 90]pu rt 45 fd 35 lt 45 pd]
end

Bài 2: Hình vẽ ( Đề thi tin học trẻ cấp tỉnh 2015 - 2016)
Hình bên được tạo thành những
hình tam giác đều và hình tròn.
Em hãy tìm cách vẽ
và viết các câu lệnh trong MSWLogo để vẽ hình này.

Câu lệnh.
to hinhve
cs
repeat 18[repeat 3[fd 200 rt 120]circle2 180/2 rt 360/18]
end
Bài 3: Bài toán.

Thuyền to chở được 6 người


Thuyền nhỏ chở được 4 người thì đông
Một đoàn trai gái sang sông
10 thuyền to nhỏ giữa dòng đang trôi
Toàn đoàn có cả 100 người
Trên bờ còn 48 người đợi sang.
Hỏi có bao nhiên thuyền to? Bao nhiêu thuyền nhỏ?
Câu lệnh.
to thuyen
cs rt 90
make "tc 6
make "nc 4
make "ng 100-48
for[t 1 10 1][make "n 10-:t if (:t*:tc+:n*:nc)=:ng [label [co so thuyen to la:]pu fd 200
label :t setxy 0 -20 pd label [co so thuyen nho la:]pu fd 200 pd label :n]]
end
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”

Bài 4: Bài toán.


Tìm 2 số tự nhiên có tổng bằng 2016. Biết giữa chúng có 123 số chẵn.
Câu lệnh.
to tong
cs rt 90
make "kc 123*2+2
for[a1 1 2016 1][make "a2 2016-:a1 if (:a1-:kc)=:a2 [label :a1 pu fd 75 pd label :a2]]
end
Bài 5: Tính tổng. (Đề thi tin học trẻ cấp huyện 2015 - 2016)
Em hãy nêu các câu lệnh trong chương trình MSWLogo để tính kết quả còn lại
của S = 2016 - 2 - 4 - 6 - ... - N.
Biết rằng giá trị của số N là số chẵn được nhận trực tiếp từ bên ngoài.
Em hãy lưu kết quả trong tệp văn bản có tên tinhtong.doc gồm các câu lệnh
của MSWLogo theo trình tự thực hiện để tính tổng.
(Chạy thủ tục với n=8 và n=20)
Câu lệnh.
to tinhtong :n
make "s 2016
for[i 2 :n 2][make "s :s-:i]
rt 90 label :s
end

Bài 6: Dãy số.


Cho dãy số sau:1,8,9,45,6,8,56,86, 3,3,6,8
a. In ra màn hình dãy số trên
b. In ra các số chia hết cho 5
c. Tính tổng các số chia hết cho 2.
d. Tính trung bình cộng của dãy trên.
e. Đếm số lần xuất hiện của phần tử n có trong dãy với n nhập từ bàn phím.
Câu lệnh.

to daya {In ra màn hình dãy số trên}

cs
rt 90
pu setxy -50 0 pd

label [day so ban dau la:]


make "dayso (array 12)
setitem 1 :dayso 1
setitem 2 :dayso 8
setitem 3 :dayso 9
setitem 4 :dayso 45
setitem 5 :dayso 6
setitem 6 :dayso 8
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
setitem 7 :dayso 56
setitem 8 :dayso 86
setitem 9 :dayso 3
setitem 10 :dayso 3
setitem 11 :dayso 6
setitem 12 :dayso 8
make "so1 0
pu setxy -50 -50 pd
for [i 1 12 1] [make "so1 item :i :dayso label :so1 pu fd 50 pd ]
end

to dayb { In ra các số chia hết cho 5}


cs
rt 90
make "dayso (array 12)
setitem 1 :dayso 1
setitem 2 :dayso 8
setitem 3 :dayso 9
setitem 4 :dayso 45
setitem 5 :dayso 6
setitem 6 :dayso 8
setitem 7 :dayso 56
setitem 8 :dayso 86
setitem 9 :dayso 3
setitem 10 :dayso 3
setitem 11 :dayso 6
setitem 12 :dayso 8
make "so1 0
make "s 0
label [cac so chia het cho 5 la:]
pu fd 300 pd
for [i 1 12 1] [make "so1 item :i :dayso if (modulo :so1 5)=0 [label :so1] ]
end

to dayc {Tính tổng các số chia hết cho 2.}


cs
rt 90
make "dayso (array 12)
setitem 1 :dayso 1
setitem 2 :dayso 8
setitem 3 :dayso 9
setitem 4 :dayso 45
setitem 5 :dayso 6
setitem 6 :dayso 8
setitem 7 :dayso 56
setitem 8 :dayso 86
setitem 9 :dayso 3

Sáng kiến kinh nghiệm 2016 - 2017


Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
setitem 10 :dayso 3
setitem 11 :dayso 6
setitem 12 :dayso 8
make "so1 0
make "s 0
pu setxy -50 -50 pd
for [i 1 12 1] [make "so1 item :i :dayso if (modulo :so1 2)=0 [make "s :s +:so1 ] ]
label [tong cac so chia het cho 2 la:]
pu fd 300 pd
label :s
end

to dayd {Tính trung bình cộng của dãy trên.}


cs
rt 90
make "dayso (array 12)
setitem 1 :dayso 1
setitem 2 :dayso 8
setitem 3 :dayso 9
setitem 4 :dayso 45
setitem 5 :dayso 6
setitem 6 :dayso 8
setitem 7 :dayso 56
setitem 8 :dayso 86
setitem 9 :dayso 3
setitem 10 :dayso 3
setitem 11 :dayso 6
setitem 12 :dayso 8
make "so1 0
make "s 0
make "dem 0
for [i 1 12 1] [make "so1 item :i :dayso make "dem :dem +1 make "s :s+:so1 ]
label [trung binh cac so trong day:]
pu fd 300 pd
label :s/:dem
end

to daye :n {Đếm số lần xuất hiện của phần tử n có trong dãy với n nhập từ bàn phím.}
cs
rt 90
make "dayso (array 12)
setitem 1 :dayso 1
setitem 2 :dayso 8
setitem 3 :dayso 9
setitem 4 :dayso 45
setitem 5 :dayso 6
setitem 6 :dayso 8

Sáng kiến kinh nghiệm 2016 - 2017


Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
setitem 7 :dayso 56
setitem 8 :dayso 86
setitem 9 :dayso 3
setitem 10 :dayso 3
setitem 11 :dayso 6
setitem 12 :dayso 8
make "so1 0
make "s 0
make "dem 0
for [i 1 12 1] [make "so1 item :i :dayso if (:n=:so1) [make "dem :dem +1] ]
label [so] pu fd 35 pd label :n pu fd 35 pd label [xuat hien la:]
pu fd 200 pd
label :dem pu fd 30 pd label[lan]
end.
Bài 7: Trồng cây.
Trong vườn cây người ta đếm thấy có tổng cộng 10 cây có tổng cộng 10 cây, được
trồng thành 5 hàng và mỗi hàng có 4 cây.
Em hãy viết các câu lệnh trong chương trình MSWlogo để vẽ lại sơ đồ vườn cây
trên. Mỗi giao điểm của đoạn thẳng được tính là 1 cây.
Câu lệnh.

to trongcay
repeat 5[circle 10 fill pu fd 150 rt 144 pd]
pu fd 57 pd
repeat 5[circle 10 fill pu fd 36 rt 72 pd]
home
repeat 5[circle 10 fd 150 rt 144]
fd 57
repeat 5[circle 10 fd 36 rt 72]
end

3. Phương pháp bồi dưỡng


Giáo viên cung cấp tài liệu về phần mềm MSW Logo, các dạng bài tập, các dạng
đề học sinh tìm hiểu và thực hành trực tiếp trên máy.
- Mức 1: Học sinh giải quyết tất cả các bài tập thực hành trong sách giáo khoa và
sách thực hành tin học chương phần mềm MSWLogo trong giờ học chính khóa. Qua đây
giáo viên cũng phát hiện học sinh có năng khiếu để tiếp tục bồi dưỡng.
- Mức 2: Là bồi dưỡng học sinh trong giờ học năng khiếu. Học sinh tìm hiểu thêm
các lệnh Logo mới mà giáo viên cung cấp, làm các bài tập, các dạng đề về MSWLogo.
Giáo viên trợ giúp khi các em không thể hoàn thành bài. Mức này được tiến hành theo
các bước và thời lượng như sau:
- Cho học sinh tìm hiểu về các lệnh trong MSW Logo, giáo viên giải thích, khắc
sâu để học sinh nắm chắc - thời lượng : 6 tiết
- Học sinh tập lập trình với những lệnh đơn, đơn giản - thời lượng: 6 tiết
- Học sinh lập trình các lệnh kết hợp, các lệnh phức tạp - thời lượng: 6 tiết
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
- Kết hợp tất cả các lệnh của Logo để giải quyết tất cả các dạng bài tập về Logo:
30 tiết.
Trong những giờ học bồi dưỡng đó, tôi cũng không quên:
- Cùng với học sinh nêu lên những điểm hay, điểm chưa hay trong bài của học
sinh để các em học tập, đưa ra cách lập trình ngắn gọn và hay nhất, rút kinh nghiệm cho
bài sau được tốt hơn.
- Thường xuyên kiểm tra bài làm học sinh, tổ chức cho học sinh thi đua với nhau
nhằm đánh giá sự tiến bộ của học sinh, kịp thời biểu dương khuyến khích học sinh.
III. KẾT QUẢ THỰC HIỆN
Qua 3 năm bồi dưỡng và tham dự hội thi “tin học trẻ không chuyên” cấp huyện và
tỉnh đã đã được kết quả như sau :

Năm học Thi cấp huyện Thi cấp tỉnh

2012 - 2013 Không tham gia Không tham gia

2014 - 2015 Đạt 1 giải ba và 1 giải KK Không tham gia

2015 - 2016 Đạt 2 giải nhì Đạt 1 giải nhì

C. KẾT LUẬN
I. KẾT LUẬN
- Giai đoạn đầu bồi dưỡng, học sinh mới tiếp cận MSWLogo cảm thấy MSWLogo
rất khó, trừu tượng, nên ngại học, giáo viên phải giải thích và đơn giản hóa để tạo niềm
tin cho học sinh.
Trong thời gian bồi dưỡng gặp những bài khó học sinh không thể làm gây tâm lý
nản và thiếu tự tin. Vì vậy, giáo viên phải động viên, khuyến khích và cùng với học sinh
giải quyết bài tập đó.

- Tôn trọng và giúp đỡ để học sinh phát huy ý tưởng sáng tạo khả thi của học sinh
trong quá trình học tập.

- Giáo viên rút kinh nghiệm sau mỗi năm học, nhất là sau mỗi lần tham dự hội thi
tin học trẻ, từ đó để có hướng điều chỉnh thích hợp hơn, hoàn thiện kế hoạch cho lần sau
tốt hơn.

- Cuối cùng là, thầy và trò cùng thực hiện hiện theo đúng kế hoạch đã đề ra.

II. KIẾN NGHỊ

- Tích cực tham mưu với nhà trường để tăng cường nâng cấp phòng máy vi tính, trang
thiết bị dạy học.
Sáng kiến kinh nghiệm 2016 - 2017
Kinh nghiệm: “Một số biện pháp bồi dưỡng lập trình MSWLogo cho học sinh dự thi Tin học trẻ.”
- Tham mưu với nhà trường phối hợp với các đơn vị khác tổ chức các buổi chuyên đề,
hội thảo về dạy học Tin học ở Tiểu học nhằm giúp giáo viên Tin học học hỏi, trao đổi,
đúc rút kinh nghiệm.
Trên đây là một số công việc đã thường xuyên được thực hiện trong các giờ dạy
tin học cũng như là trong thời gian bồi dưỡng học sinh năng khiếu Tin học. Với biện
pháp này đã giúp học sinh phát huy được hết khả năng của mình, càng học càng tự tin
hơn và nắm chắc kiến thức, giải được nhiều dạng bài tập. Giúp các em có sân chơi lí thú,
bổ ích. Đây cũng là một yếu tố giúp các em tạo nền tảng vững chắc về kiến thức để trong
các kì thi Tin học trẻ cấp huyện, cấp tỉnh sẽ đạt giải cao.

Tuy nhiên bài viết chắc chắn không tránh khỏi khiếm khuyết, rất mong được sự góp
ý, bổ sung của Hội đồng khoa học và sự góp ý chân thành của các đồng nghiệp..
Xin chân thành cảm ơn!

Đức Thọ, tháng 01 năm 2017

Sáng kiến kinh nghiệm 2016 - 2017

You might also like