A vezérlési szerkezetek szerepe:
Egy nyelv vezérlésátadó utasításai az egyes műveletek végrehajtási sorrendjét határozzák meg.
A vezérlési szerkezetek csoportosítása:
• Szekvencia: Parancsok egymásutáni végrehajtása. ; -vel elválasztva.
• Szelekciós (elágazás): egy feltétel kiértékelésének eredményétől függ, hogy milyen utasítások kerülnek végrehajtásra.
• Iteráció (ciklus, ismétlés): Az algoritmusok vezérlőszerkezetei közé tartozik az iteráció, más néven ciklus: egy vagy több utasítás ismételt végrehajtása. Akkor van rá szükség, ha egy adatcsoport valamennyi elemén ugyanazt a műveletet kell elvégezni.
Elágazások:
If utasítás: Az if utasítás segítségével valamely tevékenység (utasítás) végrehajtását egy kifejezés (feltétel) értékétől tehetjük függővé. Az if alábbi formájában az utasítás csak akkor hajtódik végre, ha a kifejezés értéke nem nulla (igaz)
Else: Az if-else szerkezet használatával arra az esetre is megadhatunk egy tevékenységet, amikor a kifejezés (feltétel) értéke zérus (hamis)
A switch utasítás: Először kiértékeli a kifejezést, majd átadja a vezértlést arra a case címkére (esetre), amelyben a címke értéke megegyezik a kiértékelt kifejezés értékével - a futás ettől a ponttól folytatódik.
Az iteráció szerepe, fajtái:
A ciklus, vagy iteráció a számítógép-programozás és az algoritmusok egyik alapvető eszköze, amely az ismétlődő tevékenységek megvalósítására szolgál. A ciklust az egyes programozási nyelvek különböző kulcsszavakkal valósítják meg, de a működési módjukat tekintve három alaptípusba sorolhatók aszerint, hogy hányszor futnak le:
*elöltesztelő
*hátultesztelő
*számlálós ciklus.
Elöltesztelős ciklus
Az elöltesztelő ciklus tehát először megvizsgálja, hogy a feltétel fennáll-e. Ha igen, akkor lefuttatja a ciklusmagot, és újból kezdődik; ha nem, akkor a program a ciklus utáni ponton folytatódik, azaz a ciklusmag kimarad. Lehetséges tehát, hogy az elöltesztelő ciklus egyszer sem fog lefutni.
Az elöltesztelő ciklus tipikus példája az adatállományok beolvasása; előfordulhat ugyanis, hogy az állomány üres, és ilyenkor nincs mit beolvasni. Hasonló a helyzet a könyvtárak listázásakor is, hiszen a könyvtárban nem biztos, hogy van állomány.
Az elöltesztelő ciklus tipikus kulcsszava a while.
Hátultesztelős ciklus:
Mivel a feltételvizsgálat a ciklusmag után áll, ezért a hátultesztelő ciklus legalább egyszer mindenképpen lefut.
A konkrét programnyelvi megvalósítástól függ, hogy a hátultesztelő ciklusban a folytatás vagy a kilépés feltételét kell-e megadni. A ciklus az első esetben addig fut, amíg a ciklusvégben megadott feltétel igaz (ennek tipikus kulcsszava a while), a másik esetben pedig addig, amíg igazzá nem válik (tipikus kulcsszava az until).
Számláló ciklus:
A számláló (vagy iteráló) ciklus általánosságban olyan előltesztelő ciklust jelent, amely egy felsorolható típus adott intervallumán léptet végig, speciálisan egész számokon. Üres intervallumra nem fut le.
C++-ban a for ciklus majdnem teljesen ekvivalens az elől tesztelős ciklussal (a continue viselkedése más), de más nyelvekben nem feltétlenül van ez így: a for ciklus átírható más ciklussá, de visszafelé általában nem.
Az iterációkhoz tartozó foglalt szavak: for, while:
A while és a for utasítással szervezett ciklusok közös tulajdonsága, hogy a ciklus leállításának feltételét a ciklus tetején (a ciklusmagba belépés előtt) vizsgálják.
For utasítás egyszerű inicializálás és újrainicializálás esetén előnyös, mivel a ciklust vezérlő utasítások együtt, jól látható formában, a ciklusmag tetején helyezkednek el.
Célszerű a for utasítást kizárólag a ciklus vezérlésére fenntartani.
Az iterációkhoz tartozó foglalt szavak: do-while:
A Java nyelv egy a while ciklushoz hasonló utasítást is biztosít — a do-while ciklust.
A do-while szintaxisa:
do {
utasítás(ok)
} while (feltétel);
Ahelyett, hogy a feltételt a ciklus végrehajtása előtt értékelné ki, a do-while ezt a ciklusmag lefutása után teszi meg. Így a do-while magjában szereplő utasítások minimum egyszer végrehajtódnak.