Фактически For - это тот же самый While, но он сам увеличивает конкретную переменную, например, на паскале:
...
for i := 0 to 8 do
...
можно заменить на
...
i := 0;
while i <= 8</strong> do
begin
...
i := i + 1;
end;
...
Просто инкремент переменной, ну и фиксированные границы...