Студопедия

КАТЕГОРИИ:


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

Repeat

Оператор1;

Оператор2;

...

ОператорN

until Условие;

Где repeat, until – ключевые слова;

Условие –константа, переменная или выражение логического типа;

Оператор1, Оператор2,..., Оператор – тело цикла.

Дословно эта языковая конструкция переводится так: «Повторять последовательность операторов до тех пор, пока не выполнится условие».

В отличие от while оператор repeat не нуждается в использовании составного оператора, когда в теле цикла используется более чем один оператор, так как ключевые слова repeat и until выполняют функции операторніх скобок.

Символ «;» после последнего оператора тела цикла также является не обязательным, что делает возможным запись цикла с пустым телом.

Кроме того, оператор repeat является не таким универсальным, как while, поскольку его Условие расположенное в конце цикла и операторы тела будут, в отличие от цикла while, всегда выполняться как минимум единовременно.

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

Действие оператора. Сначала выполняется группа операторов – Оператор1, Оператор2,..., ОператорN. Потом вычисляется значение Условия, которое является условием завершения цикла. Если оно истинно, то цикл завершается, иначе выполняется следующая итерация цикла. Цикл всегда выполняется один раз.

 

При написании циклов с постусловием, как и с предусловие, следует помнить:

  1. Содержимое тела цикла должно обязательно влиять на условие цикла для избежания за цикливание (в середине тела цикла должено быть изменение параметра цикла);
  2. О предварительной корректности условия, как в случае цикла с while беспокоиться не обязательно (к началу цикла необязательные начальные установки переменных которые управляют условием цикла).

program Celsius_Repeat_Until;

var C_f,C_L,T,K,shag:real;

i:integer;

begin

writeln('Enter first temperature');

readln(C_f);

writeln('Enter last temperature');

readln(C_L);

writeln('Enter shag');

readln(shag);

T:=C_f;

For i:=1 to 20 do write('*');

writeln;

writeln('* Celcius *','Kelvin':7,'*':2);

For i:=1 to 20 do write('*');

writeln;

repeat

K:=T+273.15;

writeln('*',T:6:1,'*':4,K:7:2,'*':2);

T:=Shag+T;

Until T>C_L;

For i:=1 to 20 do write('*');

writeln;

readln

end.

Если условие в теле цикла не изменяется, циклы while, repeat превращаются в бесконечные циклы, например:

while true do;

repeat until false;

Эти циклы пустые и никогда не заканчиваются. Прервать цикл можно специальными операторами или дополнительными условиями.

 

Отметим отличия и особенности красивого стиля работы с циклическими операторами

Цикл с предусловием while (пока условие истинное) Цикл с постусловием repeat... until (до тех пор, пока условие истинное) Цикл со счетчиком for
  До начала цикла должны быть сделаны начальные установки переменных, управляющих условием цикла, для корректного входа в цикл До начала цикла необязательны начальные установки переменных, управляющих условием цикла Начальная установка счетчика цикла до заголовка не требуется
  В теле цикла должны присутствовать операторы, которые изменяют переменные условия таким образом, чтобы цикл через несколько итераций закончился Изменение в теле цикла счетчика не допускается
  Цикл работает, пока условие истинно (пока True) Цикл работает, пока условие ложно (пока False) Количество итераций цикла неизменяемо и точно определенно значениями нижней и верхней границ и шага цикла
  Цикл завершается, когда условие становится лодным (до False) Цикл завершается, когда условие становится истинным (до True)
  Цикл может не выполниться ни разу, если начальное значение условия на входе в цикл равно False Цикл обязательно выполняется один раз Цикл может не выполниться ни разу, если шаг цикла будет изменять значение счетчика от нижней границы в направлении противоположном верхней границе
  Если в теле цикла больше чем один оператор, надо использовать операторные скобки Независимо от количества операторов в теле цикла использования операторных скобок не требуется Если в теле цикла больше чем один оператор, надо использовать операторные скобки
  Нормальный ход работы цикла может быть нарушен специальными операторами (например, процедурами Break или Continue)
<== предыдущая лекция | следующая лекция ==>
Результат работы программы. Цикл While может содержать в своем теле другие, вложенные циклы (вложенные циклы могут влиять на параметр цикла) | И постусловием
Поделиться с друзьями:


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


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



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




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