Autorské riešenie
[stiahni]

Najskôr si ukážeme, ako nakresliť jednu vločku. Nakreslíme jedno rameno, vrátime sa späť a otočíme sa. Toto opakujeme toľko krát, koľko je ramien vločky. Prvá verzia kreslí vločku, ktorá má r ramien a každé má dĺžku d.

viem vlocka :r :d
  [opakuj :r [do :d
              vz :d
              vl 360/:r
             ]
]

Procedúra vločka však nakreslí len jednu, jednoduchú vločku. Na konci jej ramien nie je nič. Ak chceme kresliť na konci jej ramien aj ďalšie, menšie vločky, upravíme ju nasledovne:

viem vlocka :r :d
  [opakuj :r [do :d
              vlocka :r :d/2
              vz :d
              vl 360/:r
             ]
]

 Lenže vy už isto viete, že táto procedúra by asi nikdy neskončila. V každej vločke by sme volali ďalšiu vločku a v nej ďalšiu vločku a v nej ... Musíme teda vymyslieť, ako volanie vločiek zastaviť. Použijeme ešte jeden parameter - u, ktorý bude číslovať, koľko krát musíme ešte vločku zavolať. Pri každom volaní ho zmenšíme o 1.

 

viem vlocka :r :d :u
  ak :u >=1 
     [opakuj :r [do :d
                 vlocka :r :d/2 :u-1
                 vz :d
                 vl 360/:r
                ]
]

 

Najčastejšie chyby

Chyby ste robili v tom, že ste kreslili len prvý vločku. Ďalšie, menšie na konci je ramien ste nenakreslili vôbec, alebo ste nenakreslili všetky.