Ad 1.
Aby zrealizować w Logo sytuację warunkową, można wykorzystać funkcję (polecenie, które zwraca wartość) JEŚLI. Składnię tego polecenia odnaleźć można w Pomocy programu albo na str. 228 podręcznika.
JEŚLI WARUNEK [LISTA POLECEŃ, GDY PRAWDA] [LISTA POLECEŃ, GDY FAŁSZ]
Zastosowaniem może być poniższy sprawdzian, czy masz już odpowiedni wzrost.
Ćwiczenie 1. Zdefiniuj w Logo procedurę WZROST według wzoru. Jeżeli chcesz wiedzieć, co piszesz, zajrzyj do Pomocy. Potem, rzecz jasna, sprawdź, czy jesteś wielki.
Zapisz projekt jako WZROST.LGP.
oto wzrost
zt
pisz [Ile masz centymetrów wzrostu?]
pisz [Wpisz 3 cyfry i naciśnij klawisz Enter]
zol [Mam\ ]
przyp "wzrost zrób cl
jeśli :wzrost > 200 [pisz [Jesteś wielki.]] [pisz [Pij mleko, będziesz wielki.]]
już
Ad 2.
Powiedzmy, że potrafimy już zdefiniować w Logo jakiś wielobok np. trójkąt albo kwadrat. Znamy także możliwość iteracji przez operację POWTÓRZ. Czy może z tego wyniknąć coś ładnego? Może, jeśli komuś podobają się rozety.
Ćwiczenie 2. Otwórz projekt KWADRAT.LGP. Przejrzyj budowę procedury w oknie Pamięć. Zdefiniuj procedurę rysowania innej figury foremnej. Wykorzystując ją, utwórz nadprocedurę ROZETA.ITERACYJNIE, w której rysunek figury będzie powtarzany wielokrotnie ze zmianą kierunku rysowania. Zapisz projekt jako ROZETA_IT.LGP.
Podobne efekty można osiągnąć stosując bardziej wyszukaną technikę - rekurencję. Chodzi o taką procedurę, która wewnątrz zawiera odwołanie do samej siebie. Aby program się nie zapętlił, należy ustalić warunek, którego spełnienie spowoduje zatrzymanie pracy żółwia. Inaczej trzeba będzie ratować zwierzaka kliknięciem na przycisk STOP (F12).
Ćwiczenie 3. Napisz procedurę ROZETA.REKURENCYJNIE, możesz wspomóc się przykładem dostepnym w podręczniku na str. 232. Zapisz zmiany w pliku projektu pt. ROZETA_REK.LGP.
oto ROZETA.REKURENCYJNIE :N
JEŚLI :N=0 [STOP]
twoja.figura :BOK np. 10 LW 35
ROZETA.REKURENCYJNIE :N-1
już
gdzie twoja. figura to zdefiniowana wcześniej procedura rysowania figury foremnej z parametrem :BOK.
Ad 3.
Logo Komeniusz oferuje kilkanaście przykładów programowania tzw. pokazów (F11). Pora zapoznać się z nimi bliżej.
Ćwiczenie 4. Znajdź nazwy 5 procedur rekurencyjnych. Otwórz wybrany pokaz. Odszukaj w oknie Pamięć pokazu przykład procedury rekurencyjnej i zapisz jej nazwę do zeszytu obok tytułu pokazu. Nazwa każdej z procedur powinna pochodzić z innego pokazu.
Zadanie domowe
Zapoznaj się z tematem 34.