Работа с циклами Паскаль

Иногда в программах, написанных на Паскале, приходится многократно выполнять одно и то же действие. Процесс, в ходе которого производится множество раз одно и то же действие, именуется циклом. Цикл называют арифметическим, если наблюдателю (пользователю) заранее известно количество повторений. Ниже представим синтаксис арифметического цикла:

for <переменная> := <значение1> to <оператор> do <значение2>

или

for <переменная> := <значение1> downto <оператор> do <значение2>

Оператор for в приведенном примере вызывает оператор, который находится после do, по одному разу для каждого из значений в промежутке от значения1 до значения2.

Начальное значение, конечное значение и переменная цикла должны быть порядкового типа. При использовании слова to происходит увеличение значения переменной цикла на 1 при каждой следующей итерации цикла. Если применить слово downto, то произойдет уменьшение значения переменной цикла на 1 при каждой следующей итерации цикла.

Помните: не рекомендуется внутри цикла самостоятельно менять значение управляющей переменной.  В синтаксисе языка допускается записывать только один оператор после слова do. Если вы желаете выполнить в цикле несколько операторов, необходимо объединить эти операторы в составной (заключить между служебными словами begin и end), иначе велика вероятность возникновения логической ошибки в программе.

Работа с циклами Паскаль

Цикл называется итерационным, если заранее неизвестно количество необходимых действий. Итерационные циклы позволяют проверить некоторое условие. В зависимости от того, каков результат выполненной проверки, либо осуществляется выход из цикла, либо повторяется выполнение тела цикла. Существует два типа итерационных цикла:

  • цикл с предусловием ( while … do … ), если проверка происходит непосредственно перед выполнением некоторого блока операторов,
  • цикл с постусловием ( repeat … until … ), если проверка происходит после выполнения некоторого блока операторов.

Рассмотрим каждый из этих циклов.

Цикл с предусловием Pascal

Итак, циклы с предусловием имеют синтаксис:

Рекомендую статью:  Первая программа Pascal

 while <выражение>  do <оператор>

реферальный код Bybit

Оператор после ключевого слова do выполняется, пока логическое выражение (под ним понимается условие возобновления цикла) принимает значение true (истина).

Истинность этого логического будет проверяться всякий раз перед тем, как в очередной раз произойдет повторение оператора цикла. И когда логическое выражение примет значение false (ложь), то сразу производится переход к следующему за while оператору.

Оценка выражения осуществляется до выполнения оператора, т.е., если изначально это выражение принимало значениеfalsе, то оператор ни разу не выполнится. Как и в случае арифметического оператора, необходимо учитывать возможность использования только одного оператора после слова do.

Для выполнения группы операторов, используйте составной оператор. Простенький пример:

epsilon:=0.000001; while n > epsilon do n:=n/2;

Цикл с постусловием Pascal

Итерационный цикл с постусловием имеет формат:

Работа с циклами Паскаль

Судя по синтаксису между словами repeat и until операторы многократно повторяются, пока логическое выражение принимает значение false. Когда логическое выражение примет значение true — всё, выход из цикла. Поскольку выражение проверяется после выполнения операторов, то хотя бы один раз выполнятся операторы. Для визуального восприятия короткий пример:

Работа с циклами Паскаль

Обратим внимание на еще одни очень важные операторы — это операторы завершения цикла. Выход из цикла для всех операторов, как правило, производится по окончании оператора цикла.  Но для этих целей можно использовать оператор выхода и оператор перехода. В Турбо Паскаль (версия 7.0) имеются следующие встроенные процедуры:

break      —  осуществляет безусловный выход из цикла,

continue  —  производит переход к началу новой итерации в цикле.

Мы знаем, что оператор безусловного перехода goto обеспечивает выход из цикла, но использовать его в этих целях не рекомендуется, поскольку для этого специально предназначены процедуры continue и break.

Я уже 3 года торгую фьючерсами на Bybit и приглашаю тебя присоединиться и получить до $30 000 бонусами плюс скидки на комиссии:
Рекомендую статью:  Принципы управления палитрой Паскаль

Зарегистрироваться на Bybit

Чем больше депозит – тем больше бонусов. Также моим рефералам доступны торговые боты для трейдинга по самым выгодным тарифам.

Рейтинг
( Пока оценок нет )
Загрузка ...
Кводо.ру