Autorské riešenie
[stiahni]

stupneRiešenie úlohy si môžeme rozdeliť na vykreslenie troch časti - stupienkov nahor, stupienkov nadol a vodorovnej čiary.

Pri celkovom počte stupienkov n (nepárne číslo) je počet stupienkov nahor o jeden väčší ako počet stupienkov nadol. Počet stupienkov nadol vyjadríme ako celočíselný podiel [n/2]. V Imagine na to použijeme operáciu cPodiel :n 2.

Jeden stupienok nahor vykreslíme pomocou postupnosti príkazov do :a vp 90 do :a vl 90. Stupienkov nahor je [n/2]+1, na ich vykreslenie použijeme príkaz opakuj:

opakuj 1+cPodiel :n 2 [do :a vp 90 do :a vl 90]

Jeden stupienok nadol vykreslíme postupnosťou príkazov vz :a vl 90 vz :a vp 90. Na vykreslenie [n/2] stupienkov nadol použijeme opäť príkaz opakuj:

opakuj cPodiel :n 2 [vz :a vl 90 vz :a vp 90]

Ďalej doplníme jednu vertikálnu úsečku dĺžky a. Celý obrázok uzavrieme horizontálnou čiarou dĺžky n.a

Uvádzame jedno z možných riešení.

viem stupne :n :a
  opakuj 1+cPodiel :n 2 [do :a vp 90 do :a vl 90]
  opakuj cPodiel :n 2 [vz :a vl 90 vz :a vp 90]
  vz :a
  vl 90
  do :n*:a
  vp 90
koniec

 

Najčastejšie chyby

Niektorí z vás nepoužili pri svojom riešení parametre procedúry, vyriešili úlohu len pre pevne zadaný počet stupienkov a výšku stupienka. poslali nekompletné riešenie. Iní nepoužili pri riešení úlohy príkaz cyklu. Najčastejším problémom bolo nepresné dokreslenie celého obrázka zapričínené zlým prepočítaním dĺžok vykresľovaných úsečiek.