Belə dövlərin TP-də proqramlaşdırılması üçün for dövr operatorundan istifadə edilir. Bu operatordan dövrün parametrinin ilk və son qiymətləri məlum olduqda istifadə edilir. Bu isə onun while və repeat universal dövr operatorlarına nisbətən daha geniş sahələrə tətbiqinə imkan verir.
for dövr operatoruna sayğaclı dövr operatoru da deyirlər. Onun aşağıdakı iki variantı var:
Dövrün yerinə yetirilmə prosesində sayğacın qiyməti artır:
for parametr : = ilk qiymət downto son qiymət do operator;
Qeyd edək ki, while və repeat operatorlarından fərqli olaraq, for operatorunda sayğacın ilk qiyməti dövrün başlanğıcından əvvəl deyil, dövrün elə başlanğıcında verili r və sayğacın qiymətinin dəyişməsi üçün xüsusi operator tələbolunmur.
for dövr operatorunda yerinə yetirilmə zamanı sayğacın ilk və son qiymətləri yadda saxlanır və parametrə ilk qiymət mənimsədilir. Sonra dəyişənin qiyməti son qiymətlə müqayisə edilir. Dövrün parametri son qiymətdən < = isə (I variant) isə dövrün növbəti iterasiyası yerinə yetirilir. Əks halda dövrdən çıxış alınır. Dövrün gövdəsi yeinə yetirildikdən sonrasayğacın qiymətinin artması və ya azalması ilə növbəti iterasiya başlayır. Bu artma (azalma) avtomatik yerinə yetirilir. TP-də for dövr operatorunun iki əsas məhdudiyyəti var:
Dövr sayğacının dəyişmə addımı I variantda +1, II variantda – 1 ola bilər.
Dövrün parametri yalnız sıra tipindən olmalıdır və for operatorunun yerləşdiyi blok üçün lokaldır.
n Misal: S i2 - nı hesablayaq:
i1
II variantda : dövrün blokunda i= n, 1 yazılır, TP proqramda isə dövr operatoru:
fori= n downto 1 do kimi verilir.
Break və continue standart prosedurlarından repeat, while və fordövr operatorlarında istifadəsi, repeat, while və for dövrlərində standart break və continue prosedurlarından istifadə etmək olar.
Həllin alqoritmi: Həllin TP-proqramı: Proqram parametrli _dövr;
var
i, n : inteqer ;
S : real;
begin
writeln (‘n = ’); readln (n);
S : = 0 ;
for i : = 1 to n do
S: = S +1 / (i * 1);
write (‘s = ‘ , S ) end
Break proseduru çıxış şərtinin yerinə yetirilməsini gözləmədən dövrdən çıxmağa imkan verir. Continue proseduru isə dövrün əvvəlki iterasiyası sonna çatmadan yeni iterasiyanın başllanmasına imkan verir.