hurok nyilatkozatok
Megvalósítása ciklikus algoritmusok, azaz a algoritmusok, amelyek tartalmazzák az azonos ismétlődő műveletek, speciális ciklus szereplők. A Pascal háromféle ciklus: for, while és ismételje meg. FOR ciklus nyilatkozat írásos formában:
A változó: = kezdő érték TO végső érték DO
A változó: = kezdő érték DOWNTO ellenszolgáltatás DO
Itt a változó - bármely változó ordinális típusú, úgynevezett ebben az összefüggésben, hogy a ciklusváltozó, a kezdeti érték és a végleges érték - a kifejezés az azonos típusú (kivéve, ahogy mindig is tette a különböző típusú integer). FOR hurok lefusson a következőképpen: a hurok változó kap egy kezdeti értéket, majd a hurok teste (a kezelő vagy a készülék után jön DO). Ezt a két lépést együttesen alkotják az egyik lépésben ciklust. Ezután a hurok változó kap a következő ciklusban (. TO), vagy az előző ciklusban (. DOWNTO) érték (Succ visszahívás funkciót és Pred) végzik, és a következő lépés a ciklus. Ez történik mindaddig, amíg az érték a hurok változó értéke nagyobb (FOR. A) vagy kevesebb (FOR. DOWNTO) ellenszolgáltatás. FOR ciklus nem lehet végrehajtani, még egyszer, ha a kezdeti érték nagyobb, mint az utolsó hurkot. TO vagy alsó végén egy hurok. DOWNTO. Írunk két példát a használata a FOR ciklus. Kiszámítjuk a négyzetösszege értéke 1, N.
CONST s. Valódi = 0; N = 22;
BEGIN for i: = 1-től n-DO s: = s + SQR (i); WriteLn ( 'összege =', s); END.
és megjeleníti a szimbólumokra indexek 32-255
BEGIN C: = '' A # 255 DO write (c); writeln; END.
A második típusú ciklus - ciklus ideig - írott formában:
MÍG logikai kifejezés DO nyilatkozat / block
Itt a logikai kifejezés - minden kifejeződését Boolean. A hurok a következőképpen kell végrehajtani. Logikai kifejezést kiértékeli és ha ez igaz, a ciklus testet, különben a ciklus véget ér. Nyilvánvaló, hogy a WHILE hurok lehet vagy nem lehet végrehajtani, még egyszer, és számtalan helyen fellépett (az utóbbi esetben azt mondjuk, hogy a program egy hurok). Írunk a két korábbi feladatokat while ciklussal:
CONST i. Szó = 1; s. Valódi = 0; N = 22;
Kezdődnek, mikor én<=N DO BEGIN s:=s+SQR(i); INC(i); END;