Autorské riešenie
Zo zadania úlohy vieme, že ornamenty sa líšia dĺžkou pichliačov a počtom základných ornamentov. Tieto dva údaje (dĺžka, počet) budú parametrami pre kreslenie ornamentu. Pri riešenie tejto úlohy je výhodné, ak si kreslenie zložitého ornamentu rozdelíme na menšie časti. Ak sa pozrieme na ornament: tak vidíme, že sa skladá z menších častí, ktoré sa v ňom opakujú:
Aj v tomto základnom ornamente vidíme, že má dve časti: pichliače z jednej strany a rovnaké pichliače zo strany druhej. Vytvorme si procedúru na kreslenie pichliačov: # Imagine Logo
viem pichliace :dlzka
opakuj 8 [
vlavo 180 / 8
dopredu :dlzka
vzad :dlzka
]
vlavo 180
koniec
Všimnime si, že pichliačov kreslíme 8. Pri posune korytnačky na ďalšie miesto z ktorého pichliače vyrastajú, korytnačka nakreslí stonku (spojnicu dvoch miest z ktorých pichliače vyrastajú). Ostáva ešte vyriešiť problém, že pichliače sa striedajú, raz sú z jednej strany raz z druhej. Aby sme mohli využiť jednu a tú istú procedúru, budeme korytnačku otáčať o 180 stupňov. Procedúra pre kreslenie základného ornamentu môže vyzerať nasledovne: # Imagine Logo
viem zakladny_ornament :dlzka
pichliace :dlzka
dopredu :dlzka
vlavo 180
pichliace :dlzka
vlavo 180
dopredu :dlzka
koniec
Nakoniec ostáva už len opakovane vykresľovať základný ornament: # Imagine Logo
viem kresli_ornament :pocet :dlzka
opakuj :pocet [
zakladny_ornament :dlzka
]
koniec
Vaše zaujímavé riešenia a najčastejšie chyby Dva tímy vyriešili úlohu správne. Pri takýchto úlohách odporúčame rozdeliť problém na menšie podproblémy a pre každý z nich vytvoriť zodpovedajúcu procedúru. Výsledné riešenie je nie len prehľadnejšie, ale jeho časti sa aj jednoduchšie testujú. |
||||||||||
© Univerzita Pavla Jozefa Šafárika v Košiciach, Prírodovedecká fakulta, Ústav informatiky palmaj (zavinac) upjs.sk |