Kącik informatyczny - Język Logo

Drukuj

Logo to język programowania powstały w latach 60 XX wieku jako narzędzie edukacyjne. Kojarzy się on z grafiką żółwia, jednak umożliwia także wykonywanie obliczeń, definiowanie własnych funkcji i poleceń oraz badanie i rozwiązywanie różnych problemów z wielu dziedzin. Pomimo, iż Logo jest stworzone głównie do nauki, posiada wiele cech typowych dla bardziej złożonych języków.

Programy napisane w Logo mogą wykonywać obliczenia, pisać teksty oraz tworzyć rysunki na ekranie. Rysunki tworzone są przez żółwia, który będzie poruszał się po ekranie według twoich poleceń. Polecenia dla żółwia wprowadzisz z klawiatury używając do tego celu ekranu tekstowego.

Aby stworzyć własny program w Logo musimy skorzystać z tzw. środowiska Logo. W przedstawionych poniżej przykładach posłużę się wersją demonstracyjną programu Logomocja-Imagine, którą można pobrać tutaj.

Poniżej znajduje się tabela podstawowych poleceń. Spróbuj przesunąć żółwia do przodu o 100 kroków, wpisując w polu tekstowym polecenie np 100.

Instrukcja iteracyjna

Oto ciąg poleceń w języku Logo rysujących kwadrat:
np 100 pw 90
np 100 pw 90
np 100 pw 90
np 100 pw 90

Zauważcie, że pewne czynności powtarzają się czterokrotnie. Aby skrócić zapis, można skorzystać z tzw. instrukcji iteracyjnej.

Ogólny zapis instrukcji iteracyjnej jest następujący:
powtórz ile [co?]

Instrukcja iteracyjna rysująca kwadrat to:
powtórz 4 [np 100 pw 90]

Procedura

Procedura to ciąg poleceń realizujących określone zadanie. Każda procedura składa się z następujących elementów:

oto nazwa procedury
czynności do wykonania
już

Przykład procedury rysującej kwadrat:
oto kwadrat
powtórz 4 [np 100 pw 90]
już

Procedurę można wywołać dowolną ilość razy pisząc jej nazwę. Jeżeli chcemy narysować dwa kwadraty jeden nad drugim, wystarczy wpisać:
kwadrat
np 100 (przesunięcie żółwia w górę o 100 kroków)
kwadrat

Procedura z parametrem

Procedury z parametrem pozwalają nam określać rozmiar lub wygląd rysowanych figur. Parametr jest dowolnym wyrazem rozpoczynającym się od znaku :.

oto nazwa procedury :parametr
czynności do wykonania
już

Przykład procedury z parametrem rysującej kwadrat:
oto kwadrat :bok
powtórz 4 [np :bok pw 90]
już

Wywołanie procedury:
kwadrat 100 (rysuje kwadrat o boku 100)
kwadrat 200 (rysuje kwadrat o boku 200)

Liczba parametrów wprowadzanych po nazwie procedury jest dowolna.

Procedura Wielokąt i zamalowywanie

W języku LOGO można w prosty sposób tworzyć kolorowe linie i wielokąty. W tym celu należy ustalić kolor pisaka oraz kolor wypełnienia. Służą do tego następujące polecenia:

ukp nr_koloru - ustala kolor pisaka np. ukp 0
ukm nr_koloru - ustala kolor wypełnienia np. ukm 12
ukp jld - ustala kolor pisaka w sposób losowy

Wykorzystamy teraz polecenie wielokąt do narysowania wypełnionego na czerwono prostokąta o wymiarach 80x150.

wielokąt [80 90 150 90 80 90 150 90]

Kolejne liczby możemy rozumieć jako: np 80 pw 90 np 150 pw 90 np 80 pw 90 np 150 pw 90. Wobec tego możliwy jest też krótszy zapis:

wielokąt [2 [80 90 150 90] ]

Zadania do samodzielnego wykonania

Zadanie 1

Napisz procedurę prostokąt, która rysuje prostokąty o podanych długościach boków a i b.

Przykład wywołania: prostokąt 100 30

Zadanie 2

Napisz procedurę pięciokąt, która rysuje pięciokąty foremne o podanej długości boku w ten sposób, że każdy bok jest innego koloru.

Przykład wywołania: pieciokąt 100

Zadanie 3

Napisz procedurę kwadraty, która rysuje tyle kwadratów o boku długości 20 jeden nad drugim, jaką liczbę podamy jako parametr.

Przykład wywołania: kwadraty 4

Efekt wywołania procedury: