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.