czwartek, 24 października 2013

Komendy i procedury w Logo


Podstawy programowania - Komendy i procedury w Logo


To, jaką czynność właśnie wykonuje żółw, zależy od trybu jego pracy. Może rysować, ścierać lub po prostu się przemieszczać po ekranie. Aby żółw przeszedł do odpowiedniego trybu, korzystamy z następujących komend:


POD - żółw podnosi pisak;
OPU - żółw opuszcza pisak;
ŚĆIER - żółw przechodzi w tryb ścierania.
PŻ - pokazuje symbol żółwia na ekranie;
SŻ -chowa symbol żółwia na ekranie;
CS - czyści ekran i ustawia żółwia na pozycji (0,0);
NP X - porusza żółwiem o X pikseli do przodu;
PW X - obraca żółwia o X° w prawo;
LW X - obraca żółwia o X° w lewo.

Spróbuj napisać następującą sekwencję komend;

np 120 pw 90
np 120 pw 90
np 120 pw 90
np 120 pw 90


Żółw narysował kwadrat o boku "120 żółwiowych kroków". W ten sam sposób możesz narysować trójkąt. Tylko o jaki kąt żółw musi się obracać?
Pamiętaj że zółw obraca się o kąt zewnętrzny a nie wewnętrzny figury którą chcesz narysować.

np 120 pw 120
np 120 pw 120
np 120 pw 120


Zauważyłeś pewnie, że pewne sekwencje komend się powtarzają!  Zastosujmy więc komendę pierwotną powtórz, która skróci pisanie procedury.

powtórz ile razy[co]

powtórz 4 [np 200 pw 90]

Żółw narysował kwadrat.

Teraz spróbujmy narysować trzydziestosześciokąt.
 Jak wyliczyć kąt?

Żółw praktycznie we wszystkich figurach obraca się o kąt 360 i dzieli go na liczbę powtórzeń.

360/4 co daje 90

Spróbujmy więc w trzydziestosześciokącie podzielić kąt 360/36

powtórz 36 [np 20 pw 360/36]

A teraz spróbujemy nauczyć żółwia nowych słów. Aby to zrobić musimy to nowe słowo mu zdefiniować. Jak to zrobić?
Wszystko zaczynamy od słowa "oto"

oto nowesłowo
treść do wykonania
już

No to konkretnie nauczmy go słowa kwadrat
oto kwadrat
powtórz 4 [np 200 pw 90]
już


Aby zobaczyć czy wszystko działa trzeba nową komendę wywołać przez jej nazwę.
Wpiszmy więc kwadrat. Na ekranie powinien się pojawić kwadrat o boku 200.
A co zrobić aby narysował kwadrat o dowolnym boku? Musimy wprowadzić mu parametr. Parametr a dokładnie nazwę parametru poprzedzamy znakiem ":"

Komenda będzie wyglądała więc teraz tak:

oto kwadrat :bok
powtórz 4 [np :bok pw 90]
już


Teraz jeżeli wywołasz kwadrat 20 narysuje kwadrat o boku 20. Jeżeli natomiast kwadrat 150 to narysuje kwadrat o boku 150

Poniżej przykłady procedur z parametrem. Wpisz je i zobacz efekty ich działania.

oto kwadraty2 :a :ile
powtórz :ile[kwadrat :a]

już 

oto koło :bok
powtórz 36 [np :bok pw 360/36]
już


oto pawie_oko :a
koło :a
koło :a+5
koło :a+10
koło :a+20
koło :a+25

już

oto trójkąt :bok
powtórz 3 [np :bok pw 360/3]
już


oto prostokąt :bok1 :bok2
powtórz 2 [np :bok1 pw 90 np :bok2 pw 90]
już


oto 6kąt :bok
powtórz 6 [np :bok pw 360/6]
już


oto 8kąt :bok
powtórz 8 [np :bok pw 360/8]
już


oto koło :bok
powtórz 36 [np :bok pw 360/36]
już


oto okrąg :r
pod np :r opu pw 95
powtórz 36 [np 3,14*:r/18 pw 360/36]
lw 95 pod ws :r opu
już


okrąg 20
okrąg 30
okrąg 40

oto okna :a
powtórz 4 [kwadrat :a pw 90]
już


oto kołoR :r
pod np :r pw 95 opu
powtórz 36 [np 3,14 * :r / 18 pw 10]
pod lw 95 ws :r opu
już

A tutaj jeszcze kilka innych komend


oto kwadraty :bok
kwadrat :bok
kwadrat :bok + 20
kwadrat :bok + 40
kwadrat :bok + 60
kwadrat :bok + 80
kwadrat :bok + 100
już

cs kwadraty 20

oto 4kwadraty :bok
powtórz 4 [kwadraty :bok pw 90]
już

oto 4kwadratyv2 :bok :ile
powtórz :ile [kwadraty :bok pw 360/:ile]
już

wywołuj  4kwadratyv2 z różnymi parametrami
 
4kwadratyv2 20 2
4kwadratyv2 20 3
4kwadratyv2 20 4
4kwadratyv2 20 8
4kwadratyv2 20 10
4kwadratyv2 20 12
4kwadratyv2 20 36
      

Brak komentarzy:

Prześlij komentarz

Uwaga: tylko uczestnik tego bloga może przesyłać komentarze.