Autorské riešenie
[stiahni]

Riešenie úlohy pozostáva z dvoch časti - vykreslenie slnka a vykreslenie oblakov.

obrazok pyramidy

Slnko vykreslíme ako skupinu lúčov vychádzajúcich z jedného bodu a otočených vzájomne o rovnaký uhol. Ak v celom kruhu máme vykresliť x lúčov, tak uhol medzi susednými lúčmi bude 360/x stupňov. Na koniec prekryjeme tieto lúče kruhom. Aby sa nám slnko nevykresľovalo stále na tom istom mieste, môžme použiť operáciu náhodne na nastavenie náhodných súradníc jeho vykreslenia. Výsledný príkaz slnko vyzerá nasledovne:

viem slnko :pocet :dlzka
  ph
  nechFp "zlta
  nechHp 3
  nechXsur -100-nahodne 200
  nechYsur 130
  pd
  opakuj :pocet [
    do :dlzka
    vz :dlzka
    vp 360/:pocet
  ]
  bod :dlzka
koniec

Jeden oblak môžme nakresliť pomocou príkazu kruh alebo elipsa. Napríklad príkazom elipsa [100 50] vykreslíme ovál so širkou 100 bodov a výškou 50 bodov. Ak chceme nakresliť ovál s dĺžkou a výškou vyjadrenými pomocou premenných, na ich spojenie do zoznamu použijeme operáciu zoznam. Skupinu oblakov vykreslíme pomocou príkazu opakuj. Náhodné nastavenie súradníc kreslenia oblakov urobíme pomocou operácie náhodne. Farbu náhodného modrého odtieňa urobíme pomocou náhodného operátora ? t. j. nechFp [0 0 ?]. Výsledný príkaz oblaky vyzerá nasledovne:

viem oblaky :pocet :dlzka
  ph
  nechHp 3
  opakuj :pocet [
    nechFp [0 0 ?]
    nechXsur nahodne 300
    nechYsur 80+nahodne 100
    elipsa zoznam 2*:dlzka :dlzka
  ]
  pd
koniec

Vaše zaujímavé riešenia a najčastejšie chyby

Do riešenia úlohy sa veľmi úspešne zapojilo 7 tímov. Pri vykreslení slnka a oblakov ste na nastavenie ich pozície použili príkaz nechPoz [niečo niečo] alebo nechXYsúr niečo niečo. Oblaky ste vykresľovali ako kruhy, elipsy alebo "barančeky" zostavené z viacerých kruhov resp. elíps. Pri riešeniach ste využili príkaz opakovania. V žiadnom riešení sme nenašli nastavenie náhodnej súradnice slnka resp. oblakov. Len v ojedinelom prípade sme našli využitie viacerých vnorených procedúr a tiež použitie viacerých premenných. Vaše pekné riešenia sme uložili do galérie obrázkov.