Autorské riešenie
[stiahni imp]

  • Počet riešiteľov: 5 / 6 = 83 %

  • Úspešnosť riešenia:  2,8 / 5 = 56 %

Táto úloha mala na vstupe iba jeden parameter - základ sumy, ktorá je predmetom listiny či zápisnice. Výstupom je tiež jeden parameter - poplatok, ktorý zaplatíme u notára. Poplatok vychádzal z presne popísaného pravidla. Z prvých 3000 eur sa platí poplatok 1%, z časti presahujúcej 3000 eur až do 6000 eur sa platí 0,7 %, z časti presahujúcej 6000 eur až do 9000 eur sa platí 0,5 %. Bolo potrebné si uvedomiť, percentuálna hodnota neplatí pre celý základ sumy, ale len pre príslušnú časť základu. To znamená, že napríklad zo sumy 4600 eur sa platí 1 % iba z časti 3000 eur, a 0,7 % zo sumy presahujúcej túto hranicu, teda zo sumy 1600 eur.

Tiež je potrebné si uvedomiť, že najmenší poplatok je 16,60 eur. To znamená, že ak vypočítaný poplatok zo základu bol menší, nastavíme konštatný poplatok 16,60 eur. V zadaní nebolo formulované, ako sa postupuje pri sume vyššej ako 9000 eur. Je však prirodzené, aby sa v takom prípade platil najväčší možný poplatok, a teda hodnota 0.01*3000 + 0.007*3000 + 0.005*3000.

Pre ošetrenie minimálneho poplatku si môžeme vypracovať pomocnú procedúru maximum:

;Imagine logo
viem maximum :a :b
   ak :a>:b [vysledok :a]
   ak :a=:b [vysledok :a]
   ak :a < :b [vysledok :b]
koniec

Nasleduje možné riešenie v jazyku Imagine Logo.

;Imagine logo
viem poplatok :zaklad
   urobTu "poplatok (0.01*3000 + 0.007*3000 + 0.005*3000)
   ak2 :zaklad > 9000 [
     vysledok :poplatok
     ]
   [
     ak2 :zaklad > 6000 [
     vysledok :poplatok - (0.005*(9000-:zaklad))
     ]
     [
       ak2 :zaklad > 3000 [
         vysledok :poplatok -(0.005*3000) - (0.007*(6000-:zaklad))
       ]
       [
         ak :zaklad <= 3000 [
            vysledok maximum (0.01*:zaklad) 16.6
         ]
        ]
      ]
   ]
koniec

 

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

Úlohu riešilo 5 tímov. Väčšina tímov riešila úlohu spôsobom, že rovnakým percentom násobilo celú sumu základu, a teda nie len jednotlivé časti. Niektoré tímy sa nevysporiadali s minimálnym poplatkom. Takisto viacero z vás nevyriešilo prípad, ak je suma väčšia ako 9000 eur - v takom prípade vaše riešnie väčšinou nevrátili žiadnu sumu poplatku.