28442

Операторы повторений. Счетный оператор цикла FOR. Оператор цикла WHILE. Оператор цикла REPEAT… UNTIL. Программирование циклических структур алгоритмов

Лекция

Информатика, кибернетика и программирование

Операторы повторений. Счетный оператор цикла FOR. Оператор цикла WHILE. Оператор цикла REPEAT UNTIL.

Русский

2013-08-20

29 KB

9 чел.

Тема 2. Операторы повторений. Счетный оператор цикла  FOR. Оператор цикла WHILE. Оператор цикла REPEATUNTIL. Программирование циклических структур алгоритмов

В языке Турбо Паскаль имеются различные операторы, с помощью которых можно запрограммировать повторяющиеся фрагменты программ.

Оператор FOR имеет такую структуру:

FOR< пар_ цик> := <нач_знач> TO <кон_знач> DO <оператор>;

Здесь

< пар_ цик>- параметр цикла- переменная типа INTEGER (точнее, любого порядкового типа);

< нач_ знач>- начальное значение- выражение такого же типа

<кон_ знач>- конечное значение – выражение того же типа.

<оператор>- произвольный оператор Турбо Паскаля.

При выполнении оператора FOR вначале вычисляется выражение <нач_знач> и осуществляется присваивание <пар_цик> : = <нач_знач>.

После этого циклически повторяется:

- проверка условия <пар_цик> <= <кон_ знач>;                                       если условие не выполнено, оператор FOR завершает свою работу;

- выполнение оператора <оператора>;

- наращивание переменной <пар_цик> на единицу ( шаг наращивания параметра цикла строго постоянен и равен( +1). Существует другая форма оператор FOR:

FOR <пар_цик>: = <нач_ знач> DOWNTO <кон_ знач> DO <оператор>;

Замена зарезервированного слова TO на DOWNTO означает, что шаг наращивания  параметра цикла равен (-1 ), а управляющее условие приобретает вид <пар_цик> >= <кон_ знач>.

S:=0;

FOR I:=1 to N DO

S: =S + ( sqr ( x) + cos (x))/ exp ( i * ln ( 6));

 

Оператор цикла WHILE c предпроверкой условия:

           WHILE <условия> DO

                  <оператор>;

<условие >- выражение логического типа.

<оператор>- любой исполнительный оператор.

Если выражение <условие>имеет значение TRUE , то выполняется <оператор>, после чего вычисление выражения <условие> и его проверка повторяются. Если <условие>имеет значение FALSE , оператор WHILE прекращает свою работу.

Оператор цикла REPEAT… UNTIL с постпроверкой условия:

                         REPEAT <тело_цикла> UNTIL <условие>;

Здесь REPEAT, UNTIL – зарезервированное слова (повторять до тех пор, пока не будет выполнено условие);

<тело_цикла>- последовать операторов Турбо Паскаля

<условие>- выражение логического типа операторы <тело_цикла> выполняется хотя бы один раз, после чего вычисляется выражение <условие>: если его значение есть FALSE, операторы <тело_цикла> повторяются, в противном случае оператор REPEAT…UNTIL завершает свою работу.

S:=0; К:=1;

REPEAT

 AR:=( sqr(x)+1) / ( sqr( sqr(x))+ exp ( 5*ln( 2* x+1));

 S:=S+AK;

 K:= K+1;

UNTIL  ABS(AK)<E;

Для гибкого управления циклическими операторами FOR,WHILE, REPEAT  в состав Турбо Паскаля включены две процедуры:

BREAK- реализует немедленный выход из цикла; действие процедуры заключается в передаче управления оператору, стоящему  сразу за концом циклического оператора.

CONTINUE- обеспечивает досрочное завершение очередного прохода цикла; эквивалент передачи управления в самый конец циклического оператора.

1ocн[37-43], [97-99]. 2ocн[123-132]. 3ocн[42-59] 4ocн[7-11]

2доп[95-106]

Контрольные вопросы

  1.  В каких случаях используются операторы   цикла For, While, Repeat?
  2.  Сколько раз запускается внутренний цикл в двух вложенных циклах?
  3.  В чем заключается различие между операторами While и Repeat?
  4.  Какие ограничения накладываются на использование оператора For?
  5.  Какое значение  может принимать  шаг цикла оператора For в Турбо Паскале?
  6.  Какая процедура соответствует конструкции выхода из цикла?


 

А также другие работы, которые могут Вас заинтересовать

67360. ПРАВОМЕРНОЕ ПОВЕДЕНИЕ И ПРАВОНАРУШЕНИЯ 123.5 KB
  Нарушение предписаний правовых норм в любом обществе носит массовый характер и создает ему весьма ощутимый моральный и материальный вред. Все без исключения правонарушения представляют собой деяния людей а не воздействие сил природы или предметов не действия животных.
67361. Перехоплення винятків класового типу 71 KB
  Виняток може мати будь-який тип, у тому числі і класового типу, створенного програмістом. У реальних програмах більшість винятків мають саме класовий тип, а не вбудований тип. Ймовірно, тип класу найбільше підходить для опису помилки, яка потенційно...
67362. ЮРИДИЧЕСКАЯ ОТВЕТСТВЕННОСТЬ. СОЦИАЛЬНАЯ ОТВЕТСТВЕННОСТЬ И ЕЕ ВИДЫ 143.5 KB
  Ответственность личности имеет социальную природу предопределенную как общественным характером отношений так и особенностями личности ее местом в системе этих отношений. Социальная ответственность возникает тогда когда поведение индивида имеет общественное значение...
67363. Перехоплення всіх винятків 78.5 KB
  Часто доцільно використовувати настанову catch(...) як останній «рубіж» catch-послідовності. У цьому випадку вона забезпечує перехоплення винятків усіх інших типів (тобто не передбачених попередніми catch-виразами). Наприклад, розглянемо ще одну версію попереднього коду програми...
67364. ПРАВОСОЗНАНИЕ И ПРАВОВОЕ ВОСПИТАНИЕ 137 KB
  Нормы права нормативные акты правоприменительные решения и другие юридические феномены могут рассматриваться как своеобразные теоретические и практические проекции культуры для обозначения которых в этом качестве науке необходимо специальное понятие.
67365. Повторне генерування винятку 79.5 KB
  Для того, щоби повторно згенерувати винятки в його обробнику, необхідно використовувати throw-настанову без вказання типу винятку. У цьому випадку поточний виняток передається в зовнішню try/catch-послідовність. Найчастіше причиною для такого виконання настанови throw слугує прагнення мати доступ до одного винятку декільком обробникам.
67366. ПРАВОВАЯ КУЛЬТУРА. ПОНЯТИЕ И ОБЩАЯ ХАРАКТЕРИСТИКА 116.5 KB
  Для раскрытия сущности обозначенной проблемы необходимо рассмотреть исходные предпосылки и принципы формирования теории правовой культуры проанализировать последнюю как объект изучения и типы знаний об этом объекте определить круг исследуемых вопросов...
67368. Потоки. Класи потоків С++ 177.5 KB
  На сьогодні існують дві версії бібліотеки об'єктно-орієнтованого введення-виведення даних, причому обидві широко використовуються програмістами: стара, що базується на оригінальних специфікаціях мови C, і нова – визначається стандартом мови програмування C++.