„miniLOGIA grafika w Logo” to konkurs informatyczny dla uczniów szkół podstawowych województwa mazowieckiego organizowany przez Ośrodek Edukacji Informatycznej i Zastosowań Komputerów (OEIiZK) na zlecenie Mazowieckiego Kuratora Oświaty. Konkurs składa się z trzech etapów, podczas których uczniowie samodzielnie rozwiązują zadania graficzne w językach Logo lub Python (z zainstalowanym modułem turtle).
W serii artykułów przedstawię rozwiązania zadań w języku Logo, opracowane przeze mnie podczas przygotowywania się do konkursu. Jako środowisko, w którym opracowywałem rozwiązania zadań wykorzystałem zalecane przez organizatora oprogramowanie Logomocja-Imagine.
Zadanie 3
Napisz procedurę ROZGWIAZDA :n, która będzie tworzyła pokazane rysunki. Parametr :n określa liczbę elementów w każdym z ramion rozgwiazdy. Może on przyjmować wartości od 0 do 10. Rysunek powinien być możliwie duży i na środku ekranu. Na rysunkach widać przykładowe wywołania procedury ROZGWIAZDA dla parametrów 0, 1 i 3.
Rozwiązanie:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
oto rozgwiazda :n cs pod powtórz 6 [pw npw*360/6 ram :n wróć] już =================================================== oto gw :bok np :bok pw 120 wars :bok warz :bok lw 60 np :bok lw 120 np :bok pw 60 np :bok już =================================================== oto ram :ile niech "bok 166/(:ile*2+1) powtórz :ile+1 [gw :bok] już =================================================== oto trs :bok wielokąt [powtórz 3 [np :bok pw 120]] np :bok pw 60 już =================================================== oto trz :bok wielokąt [powtórz 3 [np :bok lw 120]] np :bok pw 60 już =================================================== oto wars :bok ukm "żółty10 powtórz 6 [trs :bok] już =================================================== oto warz :bok ukm "brązowy powtórz 6 [trz :bok] już |
Wynik działania programu:
ROZGWIAZDA 2