„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ę PALMA, po wywołaniu której będzie rysowana palma taka, jak na rysunku obok. Wysokość palmy jest nie mniejsza niż 400.
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 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
oto PALMA cale 23 już =================================================== oto cale :bok cs pod ws 200 lw 90 np :bok*1.5 pw 90 pien :bok korona :bok wróć już =================================================== oto korona :bok warstwa :bok pw 30 np :bok lw 60 np :bok*2 pw 30 liscp :bok 4 liscl :bok 4 liscl :bok 4 liscp :bok 4 już =================================================== oto liscl :bok :ile powtórz :ile [romb :bok lw 30 np :bok lw 30 np :bok pw 30] romb :bok pw 180 już =================================================== oto liscp :bok :ile powtórz :ile [romb :bok lw 30 np :bok pw 30 np :bok pw 30] romb :bok pw 180 już =================================================== oto oba :bok rzad :bok 2 rzad :bok 3 już =================================================== oto pien :bok podstawa :bok powtórz 7 [oba :bok] już =================================================== oto podstawa :bok ukp "czarny ukm "brązowy rzad :bok 3 lw 150 np :bok pw 150 ukp "biały ukm "biały pw 90 wielokąt [powtórz 2 [np (:bok*3) pw 90 np :bok pw 90]] ukp "czarny ukm "brązowy lw 60 np :bok lw 30 już =================================================== oto romb :bok pw 30 wielokąt [powtórz 2 [np :bok pw 120 np :bok pw 60]] np :bok pw 120 np :bok lw 150 już =================================================== oto rzad :bok :ktory powtórz :ktory [romb :bok] lw 180 powtórz :ktory [romb :bok] pw 180 jeśli :ktory=3[pw 30 np :bok lw 30] jeśli :ktory=2[lw 30 np :bok pw 30] już =================================================== oto warstwa :bok ukm "zielony liscl :bok 6 liscp :bok 6 pw 30 np :bok lw 30 romb :bok pw 30 ws :bok lw 30 liscp :bok 6 liscl :bok 6 już |
Wynik działania programu:
PALMA