Pascal – язык программирования, который, в основном, используется новичками для обучения азам разработки. В реальной жизни он практически не встречается. На его основе удобно знакомиться с различными инструментами, командами и функциями программирования. Среди них особое значение имеют циклы.
Далее следует изучить их более подробно. Соответствующая информация пригодится преимущественно новичкам. Предстоит познакомиться с операторами цикла в языке Паскаль и изучить их виды.
Определение и виды
В Pascal предусматриваются три вида алгоритмов:
- линейный;
- разветвляющийся;
- циклический.
Цикл – это специальная конструкция, которая позволяет повторять фрагмент кода или конкретную функцию не один раз, а несколько. Он состоит из тела и заголовка. При помощи заголовка определяется условие «до какого момента» или сколько раз тело цикла будет реализовываться. Тело включает в себя выражения, необходимые для обработки при возврате в заголовке логической истины.
Как только достигнута последняя инструкция тела оператора, управление переходит снова к заголовку. Система проверяет условие выполнения цикла. В зависимости от результата осуществляется выбор дальнейшего алгоритма: реализация «петли» или переход к фрагменту, написанного после нее.
Паскаль предлагает несколько видов «петель», которые можно встроить в программу:
- цикл с параметром (счетчиком);
- с постусловием;
- с предусловием.
Далее предстоит изучить все перечисленные варианты более подробно. Они встречаются почти в каждом языке программирования.
Со счетчиком
Первый и самый распространенный оператор – это «петля» с параметром или счетчиком. Используется в исходном коде тогда, когда точно известно, что количество повторений не связано с тем, что происходит в теле. Поддерживает точное определение итераций (повторений). Задается при помощи ключевого слова for.
Запись for i = 0 to n = 1 do – это и есть оператор «петли» со счетчиком. В его заголовке прописываются два значения:
- переменные, которые выступают в виде счетчика – условие повторений;
- параметр счетчика, при котором оператор прекращает работать.
По умолчанию «шаг» в циклических операторах установлены на +1. В теле не допускается использование выражений, изменяющих счетчик.
Цикл for имеет несколько форм реализации:
for счетчик := начало to конец do тело;
for счетчик := начало downto конец do тело.
Первый оператор работает «стандартно». Когда код выполняется, система делает шаг +1 к «параметру» цикла. При использовании записи второго типа (downto) начальное значение уменьшается на -1.
Выше – пример использования цикла for в Pascal.
С предусловием
For i = 0 to n = 1 do – это оператор цикла с параметром. Он встречается чаще остальных, но есть и другие варианты «петель». При разработке программного обеспечения может потребоваться цикл с предусловием. Он задается ключевым слотов while.
Он в заголовке цикла содержит некое логическое выражение. В зависимости от значения числа, которое выступает результатом расчетов, происходит решение относительно дальнейшего применения оператора. Если возвращается true, цикл работает. В противном случае – нет.
После выполнения тела оператора управление приложением переходит к заголовку. Условие снова проверяется. Команда будет выполнена столько раз, сколько выражение возвращает логическую истину. Из-за этого, пользуясь оператором, разработчик должен предусмотреть хотя бы один вариант, при котором возвращается логическая ложь. В противном случае предстоит столкнуться с зацикливанием (или бесконечной петлей).
Выше можно увидеть примеры реализации оператора, где вместо to n do стоит условие sum < 100.
С постусловием
Еще один вариант изучаемых операторов – это с постусловием. While может ни разу не выполниться. Такое встречается, когда результат расчетов логического выражения равен false с первого раза. Ситуация является нормальной, но иногда приложение должно хотя бы один раз выполнить заданный цикл. В данном случае требуется использовать оператор с постусловием. Он задается ключевым словом repeat.
Здесь:
- тело стоит перед логическим выражением;
- если возвращается true, оператор не работает;
- при возврате false происходит повторение.
Теперь понятно, как в Паскале использовать for a to n do, while и repeat. Дополнительно каждый разработчик должен научиться выходить из операторов цикла в случае необходимости.
Как выйти из цикла
Begin и end в Pascal – слова, указывающие на начало и конец фрагмента кода. Для работы с «экстренным» выходом из «петель» используются другие команды. Чтобы прекратить функционирование for i = 0 to n = 1 do можно применить break. Эта команда досрочно останавливает repeat, while и for. Она помогает завершить работу с операторами цикла, если образовалась бесконечная петля.
Процедура Continue позволяет досрочно выйти из текущей итерации. Она, в отличие от break, не завершает соответствующий оператор. Система просто переходит к следующей итерации.
Выше – наглядный пример использования break и continue при выводе на дисплей устройства степеней двойки. В консоли после обработки фрагмента будут выведены числа:
- 2;
- 4;
- 8;
- 16;
- 32;
- 128.
Число 64 пропускается, так как при a = 64 текущая итерация завершается (continue), число не выводится на устройство. При a = 256 цикл окончательно прекращается (break). Согласно условиям предложенного фрагмента, соответствующий компонент не выводится в консоль. Программа просто перестает работать с циклическим оператором, передавая управление другим частям кода.
Теперь понятно, как пользоваться операторами и записью to n do. Лучше изучить соответствующий вопрос программистам помогут компьютерные дистанционные курсы.
Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в Otus!