„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 1
Napisz procedurę KWIAT, po wywołaniu której, na środku ekranu, będzie rysowany kwiatek, jak na rysunku poniżej. Rysunek powinien być możliwie duży.
Rozwiązanie:
oto kwiat cale 273 już =================================================== oto cale :bok cs niech "bok2 pkw(:bok*:bok/2) niech "odc :bok-:bok2 niech "pier (pkw(:odc*:odc*2))/2 pod ws :odc+:pier lw 90 np :odc+:pier pw 90 opu kawz :bok wars :bok wróć już =================================================== oto gw :bok niech "bok2 pkw(:bok*:bok/2) niech "odc :bok-:bok2 np :odc pw 90 np :odc lw 90 ukm "pomarańczowy wielokąt [powtórz 4 [np :bok2 pw 135 np :bok pw 135 np :bok2 pw 90 np (:bok2-:odc) pw 90]] ws :odc lw 90 np :odc pw 90 już =================================================== oto kaws :bok niech "bok2 pkw(:bok*:bok/2) niech "odc :bok-:bok2 ukm "żółty wielokąt[powtórz 4 [np :bok pw 90] np :odc lw 45 np :odc pw 90 powtórz 4 [np :bok pw 90] pw 90 np :odc pw 45 np :odc] powtórz 4 [np :bok mini :bok] np :odc lw 45 np :odc pw 90 powtórz 4 [np :bok mini :bok] pw 90 np :odc pw 45 np :odc pw 180 już =================================================== oto kawz :bok1 niech "bok3 pkw(:bok1*:bok1/2) niech "odc :bok1-:bok3 niech "bok2 (:bok1/6+pkw(:odc*:odc*2))/2 powtórz 4 [ ukm "pomarańczowy pr :bok1 :bok2 np :bok1 pw 90] ukm "żółty wielokąt [powtórz 4 [powtórz 2 [np :bok1 lw 90 np :bok2 lw 90] np :bok1 pw 90] pw 90 np :odc pw 45 np :odc pw 180 powtórz 4 [powtórz 2 [np :bok1 lw 90 np :bok2 lw 90] np :bok1 pw 90] np :odc lw 45 np :odc pw 90 ] już =================================================== oto mini :bok niech "bok2 (pkw(:bok/2/3*:bok/2/3/2)) niech "bok1 (:bok/2/3) ukm "biały wielokąt [np :bok2 lw 135 np :bok1 lw 135 np :bok2 ] pw 90 już =================================================== oto pr :bok1 :bok2 wielokąt [powtórz 2 [np :bok1 lw 90 np :bok2 lw 90]] już =================================================== oto wars :bok kaws :bok gw :bok już
Wynik działania programu:
KWIAT