Autorské riešenie
[stiahni [imp]]

  • Počet riešiteľov:  12 / 23 = 52 %

  • Úspešnosť riešenia:  2.4 / 5 = 48.3 %

Pri riešení úlohy nám pomôže tabuľka vyjadrujúca situáciu, že všetci zapojení žiaci z Korytnačkova budú riešiť všetky úlohy vo svojich kategóriách.

Ružica s hlavnými a vedľajšími smermi

Ak organizátori súťaže uvedú počty riešiteľov z Korytnačkova pre kažú úlohu ako parametre
žiaci 1, žiaci 2, žiaci 3, žiaci 4, žiaci 5, žiaci 6, žiaci 7, pre tieto parametre budú platiť nasledovné vzťahy:

  • žiaci 1 = žiaci 2
  • žiaci 3 = žiaci 2 + žiaci 4
  • žiaci 5 = žiaci 4 + žiaci 6
  • žiaci 6 = žiaci 7

Na základe týchto vzťahov vieme vytvoriť funkciu (procedúru s výstupom) skontroluj, ktorá pre uvedené 4 podmienky vráti výsledok "|určite nie| ak aspoň jedna z nich neplatí. Ak platia všetky podmienky, nemôžme automaticky uviesť výsledok "áno, lebo rovnaký výsledok by sme dostali, ak by napríklad prvé tri úlohy riešilo o jedného menej žiakov ako v skutočnosti. Preto je správne uviesť výsledok "|nevieme rozhodnúť/možno áno|.

Riešenie úlohy zapísané v jazyku Imagine Logo môže vyzerať nasledovne:

viem skontroluj :žiaci1 :žiaci2 :žiaci3 :žiaci4 :žiaci5 :žiaci6 :žiaci7
    ak :žiaci1 <> :žiaci2 [
        výsledok "|určite nie|
    ]
    ak :žiaci3 <> :žiaci2 + :žiaci4 [
        výsledok "|určite nie|
    ]
    ak :žiaci5 <> :žiaci4 + :žiaci6 [
        výsledok "|určite nie|
    ]
    ak :žiaci6 <> :žiaci7 [
        výsledok "|určite nie|
    ]    
    výsledok "|nevieme rozhodnúť/možno áno|
koniec	  

Ak poznáme logickú spojku zároveň, môžme vytvoriť nasledovné riešenie:

viem skontroluj1 :žiaci1 :žiaci2 :žiaci3 :žiaci4 :žiaci5 :žiaci6 :žiaci7
    ak2 (zároveň :žiaci1 = :žiaci2 
                 :žiaci3 = :žiaci2 + :žiaci4
                 :žiaci5 = :žiaci4 + :žiaci6
                 :žiaci6 = :žiaci7
        )[
      výsledok "|určite nie|    
    ][
      výsledok "|nevieme rozhodnúť/možno áno|
    ]          
koniec

Táto súťažná úloha je zameraná na použitie stratégie riešenia problému vytvor tabuľku, dôslednú analýzu problému využijúc logiku, na precvičenie príkazu vetvenia, funkcie s parametrami a výstupmi a prípadne zložených podmienok a logickej spojky zároveň.

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

Do riešenia tejto úlohy sa zapojilo 12 tímov kategórie PROFÍK. Plný počet bodov získali dva tímy vaporwave a LuckaIsTheBestRybyca, k čomu im gratulujeme. Vo svojich riešeniach použili oproti autorskému riešeniu tri premenné určujúce počet zapojených žiakov v každej z troch kategórii súťaže. Zaujímavé riešenie odovzdal tím SuperMario, ktorý namiesto zloženej podmienky či vnorených príkazov vetvenia použil počítadlo pre splnené podmienky. Len tím IT lamy použil vo svojom riešení funkciu s výsledkom. Ostatné súťažné tímy vypisovali výsledky vo vnútri svojich procedúr. Len tím Avenger použil vo svojom riešení logické spojky ZÁROVEŇ a ALEBO na vyjadrenie zloženej podmienky. Vačšina tímov vo svojich riešeniach použila príkaz vetvenia AK2.

V riešeniach sme zaregistrovali nasledovné chyby:

  • Nesprávna analýza riešenia, výsledkom ktorej boli riešenia, v ktorých vstupnými parametrami procedúry skontroluj neboli počty riešiteľov každej úlohy (čo bolo uvedené v zadaní úlohy), ale len počty zapojených žiakov v každej kategórii či celkový počet zapojených žiakov v danom kole.
  • Nedôslednosť analýzy riešenia, výsledkom ktorej boli riešenia správne vyhodnocujúce situáciu, keď neplatili uvedené podmienky. Pri platnosti podmienok však nemožno uviesť odpoveď "áno", ale skôr odpoveď "nevieme rozhodnúť/možno áno". Príkladom je situácia, v ktorej počet riešiteľov prvých troch úloh bude menší o 1 (t.j. úlohu 1, 2 a 3 neodovdá jeden žiak), kde bez znalosti celkového počtu riešiteľov v kategórii Profík nevieme určite povedať, že všetci súťažiaci v tejto kategórii riešili všetky úlohy (úlohy 1, 2 a 3).