LẬP TRÌNH VỚI LOGO May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT PHẦN I: CÁC KHÁI NIỆM CƠ BẢN I Con trỏ rùa Phương di chuyên Đâ ua r u May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT II Lệnh đơn Cú pháp: May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT 1.1.Giới Giớithiệu thiệumột mộtsốsốlệnh lệnhđơn đơn: a.a.ĐiĐivềvềphía phíatrước trước: - Cú pháp: FDFD - Cú pháp: - VD: FDFD 100100 - VD: Vị trí sau di chuyển 100 Vị trí trước di chuyển May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT STT Lệnh đầy đủ Viết tắt Hành động Rùa Home ClearScreen CS Rùa vị trí xuất phát xóa tồn sân chơi ForwarD n FD n Rùa phía trước n bước RighT k RT n Rùa quay phải k độ BacK n BK n Rùa lùi lại sau n bước LefT k LT k Rùa quay sang trái k độ PenUp PU Nhấc bút (Rùa không vẽ nữa) PenDown PD Hạ bút (Rùa tiếp tục vẽ) HideTurtle HT Rùa ẩn 10 ShowTurtle ST Rùa hình 11 Clean Xóa hình, Rùa vị trí 12 Bye Thốt khỏi phần mềm Logo May 13, 2018 Rùa vị trí xuất phát Nguyễn Thị Như Quỳnh Phòng GD - ĐT Một số lệnh đơn thông dụng khác: a Di chuyển rùa đến vị trí xác định sân chơi: - Cú pháp: SETXY x y với x,y là số nguyên có phạm vi sân chơi - Ý nghĩa: Di chuyển rùa đến vị trí có tọa độ (x,y) Trên đường có để lại dấu vết C Thực hiện lệnh sau: 200 Setxy 50 20 setxy 50 70 set xy -60 200 Ta vẽ đường gấp khúc OABC có tọa độ các đỉnh là O(0,0), A(50,20), B(50,70), C(-60,200) 70 -60 May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT 20 O B A 50 b Vẽ cung tròn, rùa không di chuyển: -Cú pháp: ARC -Ý nghĩa: Vẽ một cung tròn có bán kính và số đo góc xác định - VD: Lệnh ARC 60 100 sẽ vẽ một cung tròn có số đo là 60 và bán kính là 100 c Vẽ cung tròn, rùa di chuyển -Cú pháp: ARC2 -Ý nghĩa: Rùa di chuyển từ A đến B theo cung tròn AB có bán kính và số đo xác định, đồng thời di chuyển rùa sẽ vẽ lên cung này May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT Ví dụ: Vẽ một hình lục giác đều có cạnh là 100 (Hình lục giác đều là hình có cạnh bằng và sáu góc đều bằng 120 độ) RT 90 FD 100 LT 60 FD 100 LT 60 FD 100 LT 60 FD 100 LT 60 FD 100 LT 60 FD 100 May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT III LỆNH LẶP REPEAT -Cú pháp: Repeat [] - VD: Vẽ hình lục giác đều có cạnh 100 Repeat 6[FD 100 LT 60] - VD: Vẽ hình vuông cạnh 100 xếp thành hàng ngang, hai hình kề cách 50 May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT - VD: Vẽ hình vuông đồng tâm Repeat [fd 100 lt 90] RT 135 PU FD 28 LT 135 PD REPEAT 4[FD 140 LT 90] May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT b Biến toàn cục: Là biến dùng chung một không gian làm việc Định nghĩa biến toàn cục bằng lệnh MAKE -Cú pháp: MAKE “ - VD: MAKE “x 100; nháy excute MAKE “y 200; nháy excute MAKE “z :x +:y; nháy excute - Có thể yêu cầu hiện lại đồng thời giá trị của biến x,y,z bằng cách nhập lệnh: Show (list :x :y :z; nháy excute sẽ có thông báo: [100 200 300] May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT C, Biến cục bộ: Được khai báo và dùng cho thủ tục, không dùng chung toàn thể không gian làm việc Để tạo biến cục bộ là dùng lệnh LOCAL -Cú pháp: Local “ hoặc LOCAL “ -Lệnh Local chỉ khai báo biến cục bộ mà chưa gán giá trị cho biến đó Muốn gán giá trị ta phải dùng thêm lệnh make sau đó To PRO2 -To PRO1 Local “y Make “x 100 Make “y 200 End May 13, 2018 Show :y End Nguyễn Thị Như Quỳnh Phòng GD - ĐT Thủ tục có tham số Cùng một thủ tục ta có thể vẽ các hình có hình dáng giống kích thước khác bằng cách dùng thêm một vài biến tham số VD thủ tục vẽ hình vuông có dùng biến tham số tên là SIZE To hinhvuong :SIZE Repeat 4[FD :SIZE RT 90] end May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT Lệnh IF a Dạng 1: - Cú pháp: thing IF Trong đó là lệnh cần thực hiện có giá trị True Còn thing là lệnh nào đó xuất kết của lệnh IF nếu nó có kết xuất VD: if + = [print [Ha Noi la thu cua Viet Nam] VD: Make “x 12 if :x>10 [stop] May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT b Dạng 2: -Cú pháp: thing (IF ) Nếu bieuthuclogic nhận giá trị True thì thực hiện caulenh1 còn không thì thực hiện caulenh2 VD: output (if :a >:b [:a] [:b] May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT Bài tập thực hành: Dùng thủ tục vẽ có số cánh tùy chọn: 5,6,7 cánh May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT Hãy viết thủ tục vẽ hình sau: May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT Đệ quy Là thủ tục mà thân thủ tục có lệnh gọi tới chính câu lệnh đó VD: Thủ tục vẽ hình vuông có cạnh 50 To hinhvuong Rt 90 fd 50 hinhvuong End Tuy nhiên thủ tục viết thế sẽ có hạn chế là đệ quy sẽ thực hiện Muốn dừng thực hiện lệnh này phải nháy nút Halt Nguyễn Thị Như Quỳnh May 13, 2018 Phòng GD - ĐT Viết thủ tục đệ quy vẽ hình sau: to hvdequy :n :k if :n>200 [stop] fd :n rt :k hvdequy :n+2 :k end May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT Viết thủ tục đệ quy vẽ đường tròn xoắn ốc to xoantron :n if :n>30 [stop] fd :n rt 15 xoantron :n*1.005 end May 13, 2018 Nguyễn Thị Như Quỳnh Phòng GD - ĐT to cot :n if :n