Циклы в языке Pascal поддерживают все три вида алгоритмической структуры "цикл".
1) Цикл со счетчиком вида FOR i:=m TO n DO <оператор>; или FOR i:=m DOWNTO n <оператор>;
Здесь i, m, n - целочисленные. Параметр цикла i изменяется от m до n с шагом 1 и для каждого i выполняется оператор в теле цикла. Если mЦиклы этого вида обычно используются для перебора элементов массива или символов в строках известной длины. Особенность цикла: всегда завершается.
2) Цикл с предусловием вида WHILE <условие> DO <оператор>;
Оператор в теле цикла выполняется до тех пор, пока <условие> истинно. Такой цикл может не выполниться ни разу если <условие> перед входом в цикл имеет значение "ложно". Цикл может стать бесконечным, если <условие> в теле цикла не поменяет значение на "ложно". Этот цикл еще называют циклом "ПОКА", поскольку он выполняется ПОКА <условие> истинно.
3) Цикл с постусловием вида REPEAT <группа операторов> UNTIL <условие>;
Особенность цикла в том, что он выполняется минимум один раз. Каждый раз после выполнения операторов в теле цикла, проверяется истинность условия <условие> и если значение условия "истинно", цикл завершается. Цикл может стать бесконечным, если <условие> в теле цикла не поменяет значение на "истинно". Этот цикл еще называют циклом "ДО", поскольку он выполняется ДО тех пор, пока <условие> не станет истинно.