„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ę DYWAN :n, po wywołaniu której będzie rysowany dywan o długości boku 400, jak na rysunkach poniżej. Parametr :n może przyjmować wartości od 1 do 20.
Rozwiązanie:
oto dywan :n niech "bok 400/(:n*4+2+1) cs pod ws 200 lw 90 np 200 pw 90 ukp "oliwkowy8 pr 400 400 np :bok pw 90 np :bok lw 90 ukp "pomarańczowy pr 400-2*:bok 400-2*:bok ukp "oliwkowy8 wróć ws :bok/2 lw 90 ws :bok/2 war :n już =================================================== oto kaw :ktory :bok np :bok lw 90 np :bok*:ktory pw 90 np :bok pw 90 pr :bok*2*:ktory+:bok :bok np :bok*:ktory lw 90 już =================================================== oto pr :bok1 :bok2 wielokąt [powtórz 2 [np :bok1 pw 90 np :bok2 pw 90]] już =================================================== oto rzad :ile niech "bok 400/(:ile*4+2+1+2) pr :bok*:ile*2+:bok*2 :bok np :bok powtórz :ile [kaw npw :bok] ws :bok*2*:ile pw 90 już =================================================== oto war :n powtórz 4 [rzad :n] już
Wynik działania programu:
DYWAN 20