Autorské riešenie
[stiahni]

Túto úlohu môžeme riešiť niekoľkými spôsobmi. Ukážme si jeden z nich.

Najskôr označkujeme jednu stranu cesty a potom rovnakým postupom druhú. Korytnačka na začiatku stojí na kraji Korytnačkova. Keďže na krajných pozemkoch sa domy nestavajú, nebude tam ani križovatka.

Korytnačka musí zistiť, či sa nachádza pred križovatkou, a ak áno, aký tvar križovatka má. Stačí, ak otestuje farbu na miestach, kde by mohla byť príjazdová cesta. Ak je farba "sivá, je tam príjazdová cesta.

urobTu "l 0
urobTu "p 0

do 20
vl 90
do 30
ak farbaBodu = "siva [urobTu "l 1]
vz 60
ak farbaBodu = "siva [urobTu "p 1]
vp 90
vz 20

Korytnačka otestuje obe krajnice a postaví sa na miesto, kde bude značka (ak je tam križovatka). V premennej "l si zapamätá, či je príjazdová cesta zľava (urobTu "l 1), v premennej "p, či je príjazdová cesta sprava (urobTu "p 1). Na začiatku boli obe hodnoty 0.

Ak je niektorá z hodnôt premenných "l alebo "p rovná jednej, nakreslí značku a vráti sa na svoje pôvodné miesto a posunie sa na miesto, kde môže otestovať ďalšiu križovatku.

ak alebo :l = 1 :p = 1 [
  znacka :l :p
]
vl 90 do 30 vp 90
do 40
]

Procedúra na nakreslenie značky môže vyzerať takto:

viem znacka :l :p
  pd
  nechHP 5
  nechFP "modra bod 20
  nechFP "zlta vz 5 do 10 vz 5
  nechHP 3
  ak :l = 1 [
    vl 90 do 5 vz 5 vp 90
  ]
  ak :p = 1 [
    vp 90 do 5 vz 5 vl 90
  ]
  ph
koniec

Celý postup zopakujeme podľa toho, koľko križovatiek môže byť v Korytnačkove. Procedúru si nazveme znackujJednustranu.

viem znackujJednuStranu
  opakuj 18 [
    urobTu "l 0
    urobTu "p 0

    do 20
    vl 90
    do 30
    ak farbaBodu = "siva [urobTu "l 1]
    vz 60
    ak farbaBodu = "siva [urobTu "p 1]
    vp 90
    vz 20
    ak alebo :l = 1 :p = 1 [
      znacka :l :p
    ]
    vl 90 do 30 vp 90
    do 40
  ]
koniec

Na druhom konci Korytnačkova korytnačku otočíme a rovnakým postupom označkujeme aj druhú stranu.

viem znackuj
  opakuj 2 [
    znackujJednuStranu
    vl 180
  ]
koniec

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

Najčastejšie nedostatky, ktorých ste sa dopustili vo svojich riešeniach a naše odporúčania:

  • Medzi typické chyby patrilo vykreslenie značiek na zlom mieste (v strede cesty), chýbalo vyznačenie hlavnej a vedľajšej cesty. Často krát boli značky vykreslené len pre jednu stranu cesty.