Autorské riešenie
[stiahni]

Všimnime si, ako taká korytnačia škôlka pre tínedžerov vyzerá. Skladá sa z políčok rôznych tvarov. Štvorce, kruhy, trojuholníky, obdĺžniky. Čo len si vymyslíte. Niektoré sa kreslia ľahšie (napríklad kruh), iné trochu ťažšie (napríklad obdĺžnik). Každé políčko má svoje číslo. Sú postupne očíslované od 1. Pre každý skok potrebujeme striedavo jedno alebo dve očíslované políčka.

V našom riešení si vyberieme tú ľahšiu cestu :-). Naše políčka budú mať tvar kruhu. Na kreslenie kruhu použijeme príkaz bod velkostPolicka.

Aj keď sa v zadaní úlohy nehovorí o tom, aké veľké políčka majú byť, kvôli jednoduchosti sme si ich veľkosť uložili do premennej velkostPolicka. Okrem samotného políčka však musíme vykresliť aj jeho číslo. Čísla si budeme pamätať v premennej cislo. Pred kreslením každého nového políčka jeho hodnotu zvýšime o 1. Nesmieme zabudnúť na to, že farba políčka musí byť inej farby ako farba čísla. Farbu políčka sme si uložili do premennej farbaPolickaPar (alebo farbaPolickaNepar), farbu textu do premennej farbaTextu. Vykreslenie jedného políčka aj s jeho číslom spravíme takto:
 

nechFp :farbaPolickaPar
bod :velkostPolicka

urob "cislo :cislo+1
nechFp :farbaTextu
k1'text :cislo

Či pre daný skok potrebujeme jedno alebo dve políčka záleží od čísla skoku. Ak je číslo skoku nepárne, potrebujeme jedno políčko (kreslíme ho farbou farbaPolickaNepar). Ak je číslo skoku párne, potrebujeme políčka dve (kreslíme ich farbou farbaPolickaPar).

skok číslo 3, jedno políčko
skok číslo 2, dve políčka
skok číslo 1, jedno políčko

Či je číslo skoku párne alebo nepárne zistíme podľa zvyšku, keď ho vydelíme dvojkou.

Striedavé vykresľovanie jedného, alebo dvoch políčok zabezpečíme v cykle, ktorý sa bude opakovať toľko krát, koľko skokov má korytnačí športovec spraviť. Výsledné riešenie vyzerá takto:
 

viem skoky :pocet_skokov
  urobtu "velkostPolicka 50
  urob "cislo 0
  urobtu "farbaPolickaNepar "olivova
  urobtu "farbaPolickaPar "belasa
  urobtu "farbaTextu "cierna
  ph

  opakuj :pocet_skokov
    [ak2 zvysok pocitadlo 2 = 1
       [nechFp :farbaPolicka
        bod :velkostPolicka
        urob "cislo :cislo+1
        nechFp :farbaTextu
        k1'text :cislo
        vl 30
        do :velkostPolicka
       ]
       [nechFp :farbaPolicka
        bod :velkostPolicka
        urob "cislo :cislo+1
        nechFp :farbaTextu
        k1'text :cislo
        vp 120
        do :velkostPolicka
        nechFp :farbaPolicka
        bod :velkostPolicka
        urob "cislo :cislo+1
        nechFp :farbaTextu
        k1'text :cislo
        vl 120
        do :velkostPolicka
        vp 30
       ] 
    ]
koniec

Na začiatku sme nastavali hodnotu premennej :cislo na 0. Každé kreslenie štvorca jej hodnotu zvýši o 1. Ďalej sme použili cyklus, pomocou ktorého kreslíme políčka pre jednotlivé skoky. Na zistenie či ide o párny alebo nepárny skok sme použili počítadlo cyklu (a jeho zvyšok po delení 2). Po nakreslení políčka/políčok pre daný skok umiestnime korytnačku tak, aby bola pripravená kresliť políčka/políčko pre ďalší skok.

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

Väčšina z vás si neuvedomila, že počet skokov a počet políčok nie je to isté. Stačilo teda testovať či je skok párny, alebo nepárny a podľa toho kresliť dve alebo jedno políčko. Niektorý z vás "zabudli", že existuje cyklu a opakujúce sa príkazy ručne vypísali.