Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Операторы цикла с пред-условием (while)

Циклы

Имеется три основных вида циклов: цикл while, цикл repeat и цикл for.

Оператор цикла задает повторное выполнение определенных операторов.

Если число повторений заранее известно, то подходящей конструкций является оператор for. В противном случае следует использовать операторы while или repeat.

 

Оператор while используется для проверки некоторого условия в начале цикла.

Выражение, с помощью которого осуществляется управление повторением оператора, должно иметь булевский тип. Вычисление его производится до того, как внутренний оператор будет выполнен. Внутренний оператор выполнятся повторно до тех пор, пока выражение принимает значение Тruе. Если выражение с самого начала принимает значение False, то оператор, содержащийся внутри оператора цикла с пред-условием, не выполняется.

Введем следующую программу:

program Hello;

var

Count: integer;

begin

Count:= 1; while Count <= 10 do

begin

Writeln('Здравствуйте и до свидания!'); Inc(Count)

end;

Writeln('Это конец!')

end.

Первое, что произойдет при запуске этой программы, - это присваивание Count значения 1, затем следует цикл while. Здесь сначала проверяется, не является ли значение Count меньшим или равным 10. Если да, то выполняется тело цикла (begin..end). При этом на экране печатается сообщение "Здравствуйте и до свидания!", затем значение Count увеличивается на 1. Count проверяется заново и тело цикла выполняется еще раз. Это продолжается до тех пор, пока значение Count при проверке меньше или равно 10. Как только Count принимает значение 11, цикл завершается, и на экране печатается строка "This is the end!" ("Это конец!").

 

Оператор цикла с пост-условием (repeat)

 

В операторе цикла с пост-условием (начинающимся со слова repeat) выражение, которое управляет повторным выполнением последовательности операторов содержится внутри оператора repeat.

 

Результатом выражения должен быть результат булевского типа. Операторы, заключенные между ключевыми словами repeat и until, выполняются последовательно до тех пор, пока результат выражения не примет значение Тrue. Последовательность операторов выполнится по крайней мере один раз, поскольку вычисление выражения производится после каждого выполнения последовательности операторов.

Приведем примеры оператора цикла с пост-условием:

repeat

K:= I mod J; I:= J; J:= K;

until J = 0;

Имеется три основных различия между циклом while и циклом repeat. Во-первых, операторы в цикле repeat всегда выполняются хотя бы один раз, поскольку проверка выражения осуществляется не сразу после ключевого слова repeat. Наоборот, в цикл while, если выражение изначально имеет значение False, то пропускается все тело цикла. Во-вторых, цикл repeat выполняется до тех пор, пока выражение не примет значение Тrue; в отличие от него цикл while выполняется, пока выражение имеет значение Тrue. Это означает, что следует внимательно заменять один тип цикла на другой. Наконец, цикл repeat может содержать несколько операторов, не образующих составной оператор.

Замечание. В ряде случаев бывает удобно организовывать бесконечные циклы

While true do ……

Repeat

...

until false;

для выхода из таких циклов используется оператор break,который появился только в 7-й версии.

 

<== предыдущая лекция | следующая лекция ==>
Условные операторы | Массивы. Операторы цикла с параметром (for)
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 311; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.