„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 2
Napisz jednoparametrową procedurę/funkcję motyw, po wywołaniu której powstanie na środku ekranu rysunek złożony z kwadratów. Parametr określa liczbę czerwonych zygzaków na poziomym odcinku motywu i może przyjmować wartości od 3 do 8. Szerokość jest stała i wynosi 600.
oto motyw :ile niech "bok 600/(22*:ile+1+11*2) cs pod np :bok*23/2 lw 90 np (:bok*22*:ile+1)/2+:bok/2 pw 90 opu rzad :ile zak :bok*23 pw 90 np :bok rzad :ile zak :bok*23 wróć opu już =================================================== oto kw :bok wielokąt [powtórz 4 [np :bok pw 90]] np :bok już =================================================== oto rzad :ile niech "bok 600/(22*:ile+1+11*2) powtórz :ile [zak :bok*23] pw 90 np :bok już =================================================== oto spl :wys opu niech "bok :wys/11 powtórz 11[kw :bok] ws :bok lw 90 powtórz 9[kw :bok] ws :bok lw 90 powtórz 8[kw :bok] ws :bok lw 90 powtórz 5[kw :bok] ws :bok lw 90 powtórz 4[kw :bok] ws :bok lw 90 powtórz 1[kw :bok] ws :bok lw 90 już =================================================== oto spp :wys opu niech "bok :wys/11 powtórz 11[kw :bok] pw 90 np :bok powtórz 9[kw :bok] pw 90 np :bok powtórz 8[kw :bok] pw 90 np :bok powtórz 5[kw :bok] pw 90 np :bok powtórz 4[kw :bok] pw 90 np :bok powtórz 1[kw :bok] pw 90 np :bok już =================================================== oto zak :szer niech "bok :szer/23 zygp :bok*12 zygl :bok*12 pw 180 już =================================================== oto zygl :szer ukm "czerwony niech "bok :szer/12 spl :szer/12*11 pod pw 90 np 6*:bok pw 90 np 5*:bok pw 180 ukm "zielony spl :bok*11 pod lw 90 np 4*:bok pw 90 np 6*:bok już =================================================== oto zygp :szer ukm "zielony niech "bok :szer/12 spp :szer/12*11 pod lw 90 np 6*:bok lw 90 np 5*:bok pw 180 ukm "czerwony spp :bok*11 pod lw 90 np 6*:bok pw 90 np 5*:bok pw 90 np 12*:bok lw 90 np :bok pw 180 już
Wynik działania programu:
motyw 8