A Pascal nyelv

Vezérlési szerkezetek

Vezérlési szerkezetek

Egyszerű utasítások:

Strukturált utasítások
Blokk utasítás

A begin…end közötti utasítások sorozatát összetett utasításnak, blokknak nevezzük. Azon Pascal utasítások esetén, amelyek csak egy utasítást tudnak végrehajtani, fontos az egynél több utasítás összefogása egy blokkba.

feltételes utasítások:

A feltételes utasításokkal egy feltétel teljesülésétől tehetjük függővé egy utasítás (összetett utasítással akár utasításblokk) végrehajtását. Attól függően, hogy a feltételünk csak kettő, avagy több esetre bontja fel a végrehajtás menetét, alkalmazzuk az if utasítást vagy a case utasítást.

if logikai kifejezés then utasítás1 else utasítás2;

Az if szerkezetet ’;’ zárja, a else elé viszont nem szabad ’;’-t tenni, mivel a Pascal az egész szerkezetet tekinti egyetlen utasításnak. Az utasítás1, utasítás2-nek egy utasításnak kell lenni, ezért ha többet szeretnénk végrehajtani, begin end blokkba kell zárni őket.

if logikai kifejezés then

begin

utasítások

end

else

begin

utasítások

end;

A case utasítással könnyen megoldható a többirányú elágaztatás.

case szelektor of

címke1: utasítás1;

...

címken: utasításn;

else

utasításm;

end;

A szelektor csak bájton ábrázolható, sorszámozott típus lehet (felsorolási típusok, karakter, byte, shortint, boolean). A konstansok (címkék) típusa meg kell egyezzen a szelektor típusával. Az utasítások akkor kerülnek végrehajtásra, ha címkéjük értéke megegyezik a szelektor értékével. Ha nincs ilyen, akkor az else ág kerül végrehajtásra.

ciklusok

A ciklus utasításokkal utasítás(ok) ismételt végrehajtását lehet előírni. Az ismétlések számáról rendelkezésre álló információ alapján dönthetjük el, melyik ciklusszervező utasítást alkalmazzuk.

  • Ha előre ismert az ismétlések száma:

    for ciklusváltozó:=kezdőérték to/downto végérték do utasítás;

  • Ha a végrehajtási feltétel a belépés előtt ismert (előltesztelő):

    while logikai kifejezés do utasítás;

  • Ha a feltételvizsgálat előtt egyszer végre kell hajtani (hátultesztelő):

    repeat ciklusmag until logikai kifejezés;

with utasítás

A with utasítás egy rövidítési lehetőség rekordok vagy objektumok mezőinek, metódusainak rövidebb eléréséhez. A with utasításon belül a megnevezett rekord mezői egyszerűen a mezőazonosítóval hivatkozhatók, mintha lokális változók lennének. A mezőnevek az azonos nevű létező változót elfedik! A with utasítás fejében szereplő rekord vagy objektumhivatkozás kifejezése csak egyszer kerül kiértékelésre.

Példa:

type konyv = record cim, szerzo: string[30]; end; var a : konyv; begin with a do begin cim:='Piszkos Fred, a kapitány'; szerzo:='Rejtő Jenő'; end; end.