Tải bản đầy đủ (.ppt) (35 trang)

Lap trinh Logo nang cao

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (393.1 KB, 35 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1></div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

PHẦN I: CÁC KHÁI NIỆM CƠ BẢN


Đâu r
ua
P

ơ
ng
d
i c
hu

n


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

II. Lệnh đơn


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

1. Giới thiệu một số lệnh đơn:
a. Đi về phía trước:


- Cú pháp: FD <bước đi của rùa>
- VD: FD 100


Vị trí trước khi di
chuyển


Vị trí sau khi di
chuyển


100


1. Giới thiệu một số lệnh đơn


a. Đi về phía trước


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>STT</b> <b>Lệnh đầy đủ</b> <b>Viết tắt</b> <b>Hành động của Rùa</b>


<b>1</b> <b>Home</b> <b>Rùa về vị trí xuất phát.</b>


<b>2</b> <b>ClearScreen</b> <b>CS</b> <b>Rùa về vị trí xuất phát và xóa tồn bộ <sub>sân chơi.</sub></b>
<b>3</b> <b>ForwarD n</b> <b>FD n</b> <b>Rùa đi về phía trước n bước.</b>


<b>4</b> <b>RighT k</b> <b>RT n</b> <b>Rùa quay phải k độ.</b>
<b>5</b> <b>BacK n</b> <b>BK n</b> <b>Rùa lùi lại sau n bước</b>
<b>6</b> <b>LefT k</b> <b>LT k</b> <b>Rùa quay sang trái k độ </b>


<b>7</b> <b>PenUp</b> <b>PU</b> <b>Nhấc bút (Rùa không vẽ nữa)</b>


<b>8</b> <b>PenDown</b> <b>PD</b> <b>Hạ bút (Rùa tiếp tục vẽ)</b>


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

2. Một số lệnh đơn thông dụng khác:


a. Di chuyển rùa đến vị trí xác định trên sân chơi:


- Cú pháp: SETXY x y với x,y là 2 số nguyên có phạm vi trên
sân chơi.


- Ý nghĩa: Di chuyển rùa đến vị trí có tọa độ (x,y). Trên đường
đi có để lại dấu vết


A
B
C


20
70
-60


Thực hiện 3 lệnh sau:


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).


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

b. Vẽ cung tròn, rùa không di chuyển:
-Cú pháp: ARC <góc> <bán kính>


-Ý 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


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

3. 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ó 6 cạnh bằng nhau và sáu góc trong đều
bằng 120 độ)


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

III. LỆNH LẶP REPEAT



-Cú pháp: Repeat <số lần lặp> [<danh sách lệnh>]
- VD: Vẽ hình lục giác đều có cạnh 100


Repeat 6[FD 100 LT 60]


</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

- VD: Vẽ 2 hình vuông đồng tâm


Repeat 4 [fd 100 lt 90]


RT 135 PU FD 28 LT 135
PD


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

- Vẽ cánh quạt của cối xay gió


</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

IV. THỦ TỤC
1. Khái niệm:


Thủ tục là dãy các thao tác được thực hiện theo thứ tự để
hoàn thành một công việc nào đó.


<b>Cấu trúc :</b>


Đầu thủ tục : to <tên thủ tục>


Thân thủ tục : <i><b>Các câu lệnh, các thao tác bên trong </b></i>


<i><b>thủ tục</b></i>


Kết thúc thủ tục: end
<b>Ví dụ: </b> to hinhvuong



</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

Chú ý:


Dùng chữ việt không dấu để đặt tên cho thủ tục.
Trong tên thủ tục không được có dấu cách, phải
có ít nhất một chữ cái.


<b>Thực hiện viết một thủ tục:</b>


Trong ngăn gõ lệnh gõ : edit “tên thủ tục (vd: edit
“hinhvuong) rồi gõ Enter.


Ở cửa sổ soạn thảo gõ phần thân của thủ tục.
Kết thúc vào File / Save and exit.


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

Hãy tạo tệp bang.log chứa các thủ tục bang (vẽ bàn cờ
8 x 8 ô vuông), cot (vẽ 2 cột liền kề gồm 16 ô vuông),
hinhvuong (vẽ 1 ô vuông)


to hinhvuong


repeat 4[fd 20 rt 90]
end


to cot


repeat 8[hinhvuong fd 20] wait 60
rt 90 fd 40 rt 90 wait 60


repeat 8[hinhvuong fd 20] wait 60


lt 180 wait 60


end


to bang


</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15></div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16></div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17></div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

2. Biến toàn cục và biến cục bộ
a. Biến:


- Cú pháp: MAKE “<tenbien> <giatri>


- Ý nghĩa: Tạo ra 1 biến và gán giá trị cho biến này
- Lưu ý: Nếu giá trị là số thập phân thì giữa phần


nguyên và phần thập phân là dấu chấm.


- Nếu giá trị là 1 dòng chữ thì phải đặt trong ngoặc
vuông.


</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

VD:


MAKE “chieudai 40.2
MAKE “chieurong 25.6


MAKE “dientich :chieudai *:chieurong
VD:


</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>

Lưu ý: Chúng ta sử dụng lệnh SHOW thing để hiện thị
một đại lượng nào đó cần kiểm tra giá trị (giá trị được
hiện ra trong ngăn ghi lại các lệnh đã gõ)



-Nếu thing một biến đã tạo ra trước đó, ta viết trước tên
biến có dấu 2 chấm.


- show :chao


</div>
<span class='text_page_counter'>(21)</span><div class='page_container' data-page=21>

b. Biến toàn cục: Là biến dùng chung trong 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 “<tenbien> <giatri>
- VD: MAKE “x 100; nháy excute


MAKE “y 200; nháy excute
MAKE “z :x +:y; nháy excute


</div>
<span class='text_page_counter'>(22)</span><div class='page_container' data-page=22>

C, Biến cục bộ: Được khai báo và dùng cho 1 thủ tục,
không dùng chung trong 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 “<tenbien> hoặc LOCAL “<DS bien>
-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 PRO1


Make “x 100
End



To PRO2
Local “y


Make “y 200
Show :y


</div>
<span class='text_page_counter'>(23)</span><div class='page_container' data-page=23>

3. 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 nhau nhưng kích thước khác nhau 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


</div>
<span class='text_page_counter'>(24)</span><div class='page_container' data-page=24>

4. Lệnh IF
a. Dạng 1:


- Cú pháp: thing IF <bieuthuclogic> <caulenh>
Trong đó <caulenh> là lệnh cần thực hiện khi


<bieuthuclogic> có giá trị True. Còn thing là lệnh nào
đó xuất ra kết quả của lệnh IF nếu nó có kết quả xuất
ra.


</div>
<span class='text_page_counter'>(25)</span><div class='page_container' data-page=25>

b. Dạng 2:


-Cú pháp: thing (IF <bieuthuclogic> <caulenh1>


<Caulenh2>)


Nếu bieuthuclogic nhận giá trị True thì thực hiện
caulenh1 còn không thì thực hiện caulenh2


</div>
<span class='text_page_counter'>(26)</span><div class='page_container' data-page=26>

Bài tập thực hành:


</div>
<span class='text_page_counter'>(27)</span><div class='page_container' data-page=27></div>
<span class='text_page_counter'>(28)</span><div class='page_container' data-page=28></div>
<span class='text_page_counter'>(29)</span><div class='page_container' data-page=29>

5. Đệ quy


Là thủ tục mà trong 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


</div>
<span class='text_page_counter'>(30)</span><div class='page_container' data-page=30>

Viết thủ tục đệ quy vẽ hình sau:
to hvdequy :n :k


if :n>200 [stop]
fd :n


rt :k


</div>
<span class='text_page_counter'>(31)</span><div class='page_container' data-page=31></div>
<span class='text_page_counter'>(32)</span><div class='page_container' data-page=32>

Viết thủ tục đệ quy vẽ đường tròn xoắn ốc
to xoantron :n


if :n>30 [stop]
fd :n rt 15


</div>
<span class='text_page_counter'>(33)</span><div class='page_container' data-page=33>

to cot :n



if :n <0[stop]


repeat 4[fd :n rt 90]
fd :n


</div>
<span class='text_page_counter'>(34)</span><div class='page_container' data-page=34>

to thap :n :t
if :t =0 [stop]
cot :n


</div>
<span class='text_page_counter'>(35)</span><div class='page_container' data-page=35></div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×