Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Оператор цикла с параметром (FOR)

ВОПРОСЫ

1. Что делают следующие инструкции?

n:=0;

repeat

writeln(‘*’);

n:=n+1

until n<5;

2. Запишите условие окончания цикла для предыдущего примера так, чтобы было выведено 5 звездочек.

3. Для инструкций

n:=0;

repeat

writeln(‘->’);

readln(a);

n:=n+1

until <условие>;

запишите условие окончания цикла так, чтобы цикл завершался, если введено 10 чисел или введено число 0.

 

 

При составлении циклов с предусловием или постусловием необходимо принимать во внимание следующие моменты:

1) перед каждым (первым) выполнением цикла условие его окончания (или продолжения) должно быть определено (иметь конкретное значение);

2) тело цикла должно содержать хотя бы один оператор, влияющий на условие окончания (продолжения), иначе цикл будет продолжаться бесконечно;

3) условие окончания цикла должно быть в конце концов удовлетворено;

4) условие вычисляется при каждом выполнении цикла и поэтому должно быть насколько можно простым.

В случаях, когда число повторений может быть заранее известно, для организации циклической обработки информации применяется оператор повтора FOR. Часто этот оператор повтора называют оператором цикла с параметром, т.к. число повторений задается переменной, называемой параметром цикла, или управляющей переменной. Оператор цикла с параметром состоит из заголовка и тела цикла.

Формат записи оператора:

FOR <параметр цикла>:= <m1> TO <m2> DO

BEGIN

{операторы тела цикла}

END;

где m1 и m2 – выражения, определяющие соответственно начальное и конечное значения параметра цикла;

for … do – заголовок цикла, определяющий:

- диапазон изменения значений управляющей переменной (параметра цикла) и одновременно число повторений оператора, содержащегося в теле цикла;

- направление изменения значения параметра цикла (возрастание – TO или убывание – DOWNTO).

Тело цикла может быть простым или составным оператором. Оператор FOR обеспечивает выполнение тела цикла до тех пор, пока не будут перебраны все значения параметра цикла от начального до конечного.

При первом обращении к оператору FOR вначале вычисляются выражения m1, m2 и осуществляется присваивание <параметр цикла>:= m1.

После этого циклически повторяются следующие действия:

1. Проверяется условие <параметр цикла> <= m2.

2. Если условие выполнено, то оператор FOR продолжает работу (выполняется оператор в теле цикла), если условие <параметр цикла> <=m2 не выполняется, то оператор FOR завершает работу, и управление в программе передается на оператор, следующий за циклом.

3. Значение управляющей переменной (параметра цикла) изменяется на +1 или –1 (в этом случае вместо служебного слова TO записывается служебное слово DOWNTO в операторе цикла FOR). Необходимо обратить внимание, что шаг изменения управляющей переменной – единица.

На использование управляющей переменной (параметра цикла) в цикле FOR налагаются следующие ограничения:

1. В качестве параметра должна использоваться простая переменная, описанная в текущем блоке.

2. Управляющая переменная должна иметь дискретный тип.

3. Начальные и конечные значения диапазона должны иметь тип, совместимый с типом управляющей переменной. При этом допустим любой скалярный тип, кроме вещественного.

4. В теле цикла запрещается явное изменение значения управляющей переменной (например, оператором присваивания).

5. После завершения оператора значение управляющей переменной становится неопределенным, если только выполнение оператора не было прервано оператором перехода.

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


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


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



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




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