La variable doit être de type scalaire (entier, énuméré, intervalle ou caractère). Elle ne peut pas être de type réel.
Si exp1 > exp2 le for est ignoré
program boucle_for;
var
i:integer;
begin
for i:=1 to 5 do
writeln('le carré de ', i, ' est :', i*i);
writeln;
writeln('fin');
end.
Il est possible d'imbriquer plusieurs boucles FOR :
for x1 := c1 to c2 do
begin
...
for x2 := d1 to d2 do
begin
...
end;
...
end;