Amikor jól jön a mentor

Mivel a PRO csomagra fizettem elő, így hetente kétszer átnézi egy mentor a haladásom és a feladatmegoldásokat, s egy üzenetben kielemzi azokat. Hétvégén elakadtam a StudiCore programmal, mégpedig a 7. fejezet három utolsó feladatával.

Ezek nagyjából hasonló logikát követtek, és én is ugyanazon a helyen akadtam el velük. Az első feladat egy piramis kirajzolása volt, ahol ciklusba ágyazott ciklussal kellett dolgozni. A lényeg az volt, hogy a piramist csillag karakterekből kellett kirakni, s ahol üres a felület, ott a szóközzel kellett dolgozni.

Ez így elég egyszerűen hangzott, s meg is csináltam a 3 feladatot, amit feltöltve a StudiCore rendszerébe az automata kiértékelő nem fogadott el 100%-os megoldásnak, így nem tudtam tovább lépni. Lefuttatva a programom, a NetBeans-ben ezt kaptam:

piramisrajzolo.jpg

Ott a piramis, nem értettem, hogy mi a probléma. Aztán megkaptam a mentoromtól a választ, a bal oldalt tényleg szóközökkel kellett feltölteni az üres helyet, hogy a csillagok a megfelelő pozícióba kerüljenek. De nem kellett volna minden sorban ugyanannyi szóközt a piramis jobb oldalára is kitenni, hanem elég lett volna a sortörést az utolsó csillagoknál megejteni.

Emiatt nem tetszett az eredmény az automata kiértékelőnek, mivel észlelte a felesleges karaktereket a piramis jobb oldalán. Átgondolva a dolgot, igaza van, a piramis jobb oldalára a szóközöket minden sorban egy extra (feleslegesen) lefutó ciklus írta ki, s a szóköz karakterek ott nem is látszanak. Ezzel a 4 sor magas piramisnál 4 extra ciklus lefutást generáltam, amit aligha lehet hatékony programozásnak nevezni.

Bár nevetségesnek tűnik ez a hiba, megtanultam belőle, hogy az ilyen típusú feladatoknál nem teszem ki feleslegesen a nem látható elemeket, s ezt a későbbiekben már mindig szem előtt fogom tartani.