Thứ ba, 26 Tháng 5 2020 09:37

Lập Trình Thiếu Nhi MSWLogo

HỌC VÀO THỨ 6 ( 13H30 ĐẾN 15H HOẶC 15H ĐẾN 16H30), THỨ BẢY ( ĐĂNG KÝ HỌC SÁNG HOẶC CHIỀU)

ĐĂNG KÝ HỌC TẠI

266 BÙI THỊ XUÂN P2 ĐÀ LẠT

02633 909 400 - 0986 91 86 86 - 0989 605 492 

 DOWNLOAD MSWLogo   

 

 

I.            MSWLogo là gì.

Giới thiệu.

Là một ngôn ngữ lập trình được thiết kế và phát triển bởi Seymour Papert, Daniel Bobrow và Wallace Feurzeig. Trong chương trình này bạn sẽ điều khiển 1 hoặc nhiều con rùa (là một hình tam giác) di chuyển trên sân chơi thông qua các lệnh, bên cạnh đó nó cũng được dùng để xử lý tính toán xử lý đưa ra kết quả các bài toán lập trình phức tạp.

Cách cài đặt.

Bạn có thể tải chương trình TAỊ ĐÂY và cài đặt theo hướng dẫn của chương trình. Sau khi cài đặt xong bạn sẽ thấy biểu tượng của chương trình ngoài Desktop.

 

Giao diện MSWLogo.

Cách viết và lưu một chương trình.

Với MSWLogo bạn có thể thoát bằng cách  Click vào  hoặc nhập lệnh Bye.

Bạn có thể ra lệnh cho Mswlogo làm việc thông qua các lệnh nhấn từ bàn phím vào ngăn nhập lệnh và nhấn phím enter hay Click  để ra lệnh cho Mswlogo thực hiện lệnh. Tuy nhiên khi bạn thoát chương trình thì những lệnh này sẽ không lưu lại, bạn phải thực hiện lại từ đầu ở lần làm việc tiếp theo, nếu muốn lưu lại bạn thực hiện theo trình tự sau.

 Bước 1: Click vào Edall để mở khung soạn thảo chương trình.

 

 Bước 2: Đặt tên chương trình sau to, kế đó bạn ghi các lệnh mà bạn muốn thực hiện ở giữa

to end. Ví dụ:

 
   


 Bước 3: Click File à Save and Exit. Nếu có lỗi, bạn sẽ được thông báo và phải chỉnh sửa lỗi xong mới có thể thoát ra. Sau đó, bạn có thể gọi chương trình từ ngăn lệnh bằng lệnh Ve_Hinh_Vuong và nhấn phím enter, kế đó hãy lưu lại thành file chương trình của Mswlogo.

 Bước 4: Click vào File à Save và lưu lại thành tập tin mặc định của Mswlogo .lgo.

Như vậy ở lần làm việc sau muốn tiếp tục làm việc bạn chỉ cần Click FileàLoad… để mở file đã lưu ra làm tiếp.

 

II.            Một số lệnh cơ bản.

Nhóm lệnh di chuyển.

Khi di chuyển từ điểm này qua điểm khác tùy theo trạng thái của bút vẽ. Trên đường di chuyển, rùa sẽ để lại đường đi trên sân chơi. Sân chơi có tọa độ ±500 cho 4 góc và ngay tại vị trí chính giữa có tọa độ x = 0, y = 0. Có một số lệnh di chuyển từ vị trí hiện tại tới một vị trí nào đó như sau:

  1. FORWARD viết tắt FD, cú pháp: FD n đi thẳng tới n bước, n có thể mang giá trị âm lúc đó rùa sẽ đi lùi.
  2. BACK viết tắt BK, cú pháp: BK n đi lùi lại n bướ
  3. SetX n di chuyển tới tọa độ có vị trí là (n,y) -500 ≤ n ≤ Tọa độ y là y hiện tại của rùa.
  4. SetY n di chuyển tới tọa độ có vị trí là (x,n) -500 ≤ n ≤
  5. SetXY x y di chuyển từ vị trí hiện tại tới tọa độ x,
  6. SetPOS [x y] tương tự lệnh
  7. Home từ vị trí hiện tại di chuyển về ngay tọa độ (0,0).
  8. Right n Viết tắt RT, xoay rùa về phía bên phải một góc n độ.
  9. Left n Viết tắt LT, xoay rùa về phía bên trái một góc n độ.

 

Nhóm lệnh vẽ đường tròn, cung tròn và ellipse.

  1. ARC a r Vẽ cung tròn với góc là a và bán kính là r. Sau khi vẽ xong rùa đứng yên tại tâm.
  2. ARC2 a r Vẽ cung tròn với góc là a và bán kính là r. Bắt đầu vẽ từ chỗ rùa đang đứng, vẽ tới đâu rùa đi theo tới đó (rùa nằm trên cung tròn).
  3. ELLIPSE x.ngang y.cao Vẽ hình ellipse với 2 thông số, chiều ngang theo trục x, chiều cao theo trục y, rùa đứng yên tại tâm.
  4. ELLIPSE2 x.ngang y.cao Vẽ hình ellipse với 2 thông số, chiều ngang theo trục x, chiều  cao theo trục y, rùa chạy theo đường
  5. ELLIPSEARC độ dài cung x y góc. Ví dụ muốn vẽ 1 nửa vòng ellipse ở phía trước mặt rùa

(90) lệnh như sau : ELLIPSEARC 180 150 80 90

  1. ELLIPSEARC2 Rùa chạy theo cung khi vẽ.
  2. CIRCLE r Vẽ đường tròn bán kính r rùa đứng tại tâm.
  3. CIRCLE2 r Vẽ đường tròn bán kính r rùa di chuyển theo đường tròn, sau khi hoàn thành rùa nẳm trên đường tròn.

 

Các lệnh ARC2, ELLIPSE2 , ELLIPSEARC2, Circle2 về các thông số cũng giống như ARC, ELLIPSE, ELLIPSEARC, Circle các bạn tự tìm hiểu.

 

Nhóm lệnh về bút vẽ, màu sắc.

  1. Pen Up viết tắt là PU :

Lệnh này nhấc viết của rùa lên và kết quả là khi di chuyển rùa không để lại dấu vết.

  1. Pen Down viết tắt là PD :

Lệnh này hạ viết của rùa xuống. Các lệnh di chuyển sau lệnh này ta sẽ thấy dấu vết của sự di chuyển.

  1. PENERASE viết tắt PE :

Đặt bút xuống và thiết lập chế độ xóa. Dùng lệnh PPT/ PENNORMAL để thiết lập lại trạng thái trước đó/ trng thái ban đầu của bút vẽ.

  1. SetPenSize [n1 n2]

Thiết lập độ dày, cao của nét vẽ. Lệnh này có thể thực hiện qua Menu Set→Pen Size …

  1. SETPENCOLOR viết tắt SetPC [Red Green Blue]

Thiết lập màu cho bút vẽ Red, Green, Blue có giá trị từ 0→255, ví dụ SetPC [255 0 0] sẽ cho ta màu đỏ. Có thể sử dụng 16 màu có sẵn từ 0 à 15

  1. Setfloodcolor [R G B] viết tắt SetFC[R G B]

Cài đặt màu nền (giống SetPC) và tô bằng lệnh FILL.

  1. FILL Tô màu nền trong phạm vi khép kín của hình.

Màu nền tô đã được báo trước bằng lệnh Setfloodcolor. Lệnh Fill không cần phải hạ bút xuống mà vẫn tô được.

dụ 1: Vẽ tam giác đều cạnh 200 và tô màu đỏ bên trong.

To TamGiac

Setfloodcolor [255 0 0 ] ; đặt màu tô nền là màu đỏ.

FD 200 RT 120 FD 200 RT 120 FD 200 ; vẽ tam giác đều độ dài cạnh 200. PU ; nhấc bút.

LT 45 ; xoay trái 45 độ.

BK 50 ; đi lùi vào trong 50 bước . 3 dòng lệnh PU LT và BK mục đích là đưa rùa vào bên trong hình tam giác đều.

FILL ;Những ký tự sau dấu ; được xem là ghi chú MSWLogo không thực hiện những dòng này.

END

Kết quả ta được hình tam giác tô màu đỏ.

 

Nhóm lệnh về in kết quả, thông báo.

  1. PRINT [Nội dung, kết quả, thông báo] viết tắt PR ví dụ PR 1+2+3 ra kết quả là 6 ở trong cửa sổ lệnh.
  2. SHOW [nội dung, kết quả muốn in ], lệnh tương tự
  3. LABEL thì hiện ra kết quả ở sân chơi, nếu muốn hiện thị theo chiều ngang thì chúng ta phải xoay rùa về phải 90 độ, nếu muốn hiển thị nhiều hơn một từ thì sử dụng:
    • Label [Đây là nội dung muốn đưa ra sân chơi].
    • Label (List “Các “từ “sau “đây “sẽ “hiển “thị “ra “ngoài “sân “chơi).

Nhóm lệnh về vị trí rùa.

  1. HIDETURTLE viết tắt HT ẩn rùa, không thấy hình tam giác (Rùa) trên sân chơi nữ
  2. SHOWTURTLE viết tắt ST hiện rùa.
  3. POS cho ta biết vị trí hiện tại của rùa. Ví dụ: Show POS
  4. CLEARSCREEN viết tắt CS xóa sân chơi, đưa rùa về vị trí ban đầu(0,0). Nếu có nhiều rùa thì xóa luôn chỉ để lại 1 rùa.
  5. CLEAN Xóa hết các nét vẽ trên sân chơi, rùa giữ nguyên vị trí và góc độ.
  6. CLEARTEXT viết tắt CT , xóa hết tất cả các lệnh đã nhập trong ngăn lệ
  7. HOME Đưa rùa về vị trí ban đầu (0,0).
  8. HEADING Cho biết đầu rùa đang xoay ở vị trí bao nhiêu (0 đến 360)
  9. SetHeading n Quay rùa về góc n độ, tương tự RT hoặc
  10. TOWARDS x y Quay đầu rùa về hướng tọa độ x,
  11. DISTANCE x y đo khoảng cách từ vị trí hiện tại tới tọa độ x

III.            Các phép toán trong MSWLogo.

Cộng, trừ, nhân, chia, ( ).

 
   


MSWLogo thực hiện theo trình tự ưu tiên trong ngoặc trước rồi tới *, /, +, -. Ví dụ:

Ví dụ: Print 2+3*4 cho kết quả là 14. Ví dụ: Print (2+3)*4 cho kếtquả là 20.

 

Phép toán logic AND, OR, NOT.

  1. AND đk1 đk2 nếu muốn nhiều hơn thì viết như sau (AND đk1 đk2 đk3 đk4…) AND chỉ đúng (TRUE) khi tất cả các điều kiện bên trong đều đúng.
  2. OR đk1 đk2 nếu muốn nhiều hơn thì viết như sau (OR đk1 đk2 đk3 đk4…) OR chỉ sai (FALSE) khi tất cả các điều kiên bên trong đều
  3. NOT đk Nếu đk là đúng thì trả về giá trị sai và ngượi lạ

Trong thực tế để giải quyết một bài toán đôi khi cần phải phối hợp nhiều các phép toán logic lại với nhau.

NOT EQUALP(<>), EQUALP(=), LESSP(<), GREATERP(>).

MSWLogo không cho phép thực hiện trực tiếp phép toán <>, <=, >= mà phải thông qua hàm, cách viết như sau:

  • NOT EQUALP thay cho <>. Ví dụ Show Not Equalp 3 5 à đúng (true)
  • <=, >= Sử dụng chung với hàm OR Ví dụ Show (OR 3>5 3=5) 3≥5 Show (OR 3<5 3=5) 3≤5.
  • Các phép toán <, >, = sử dụng bình thườ

IV.            Biến là gì, cách khai báo, phạm vi biến.

Định nghĩa.

Biến là 1 vùng trong bộ nhớ, được đặt tên bằng một dãy chữ và số, dùng để lưu trữ các giá trị (số, chữ hoặc logic). Biến có thể do hệ thống tạo sẵn hoặc do người dùng tự tạo ra để giúp giải quyết các bài toán lập trình, ta có thể thay đổi giá trị của biến. Tại sao phải dùng biển? Có thể hiểu một cách đơn giản nhất: Dùng biến để giải một bài toán ở dạng tổng quát nhất.

Phạm vi của biến, cách khai báo.

Biến có thể được sử dụng từ tất cả các chương trình khác nhau thì gọi là biến toàn cục, nếu biến đó chỉ sử dụng trong một chương trình thôi và khi kết thúc chương trình thì nó biến mất thì gọi là biến cục bộ. Trong MSWLogo có thể khai báo biến ở đâu cũng được, tuy nhiên nên khai báo ở đầu chương trình. Tên biến bắt đầu bàng một chữ cái và không được giống với các lệnh của Mswlogo.

  • Make “tên_biến_toàn_cục giá_trị_ban_đầu
  • Local tên_biến_cục_bộ

Khi muốn đọc giá trca mt biến nào đó thì thêm dấu : trước tên biến Khi muốn thay đổi giá trca biến sdụng Make “tên_biến giá_tr_mi Hãy xem mt ví d:

 

Truyền biến cho chương trình.

Để truyền một giá trị vào chương trình con thì ngay phần khai báo tên chương trình con, ta phải liệt kê các biến truyền vào, biến này là biến cục bộ.

Top