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