Что называется телом цикла

Циклы с известным количеством повторений

Теоретическое обоснование

VISUAL BASIC: ПРОГРАММИРОВАНИЕ ЦИКЛОВ

Лаб. Раб. № 16

Цель и содержание:приобретение практических навыков работы с программами циклической структуры.

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

В Visual Basic для организации циклов используются операторы:

· For . Nextдля цикла с счетчиком;

· Do While [или Until] Условие . Loopдля цикла с предусловием;

· Do . Loop While [или Until] Условие для цикла с постусловием.

ForCчетчик = Начальное_значениеToКонечное_значение[StepШаг]

Next[Cчетчик]

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

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

Пример 1.Найти количество отрицательных чисел среди N введенных.

… ‘ объявление переменных и ввод значения N

kol=0 ‘первоначально количество чисел равно 0

For i = 1 To n ‘начало цикла

a = Val (InputBox("Введите число: ", " Ввoд исходных чисел"))

if a max then max = b ‘сравнение числа с максимальным

Next i ‘возвращение на начало цикла с увеличением счетчика на шаг

Пример 3. Найти произведение отрицательных чисел среди N введенных.

… ‘ объявление переменных и ввод значения N

pr=1 ‘первоначально значение произведения равно 1

a = Val (InputBox("Введите число: ", " Ввoд исходных чисел"))

if a

| следующая лекция ==>
Тема: ОДНОФАКТОРНЫЙ ДИСПЕРСИОННЫЙ АНАЛИЗ | IV. Учебно-материальное обеспечение. II. Расчет учебного времени Содержание и порядок проведения занятия Время, мин ВВОДНАЯ ЧАСТЬ ОСНОВНАЯ ЧАСТЬ Учебные вопросы 1

Дата добавления: 2014-01-15 ; Просмотров: 1049 ; Нарушение авторских прав? ;

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

Финансовый словарь Финам .

Смотреть что такое "Тело цикла" в других словарях:

тело цикла — — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом EN loop body … Справочник технического переводчика

Тело цикла — … Википедия

рабочее тело цикла — (напр. теплосиловой установки) [А.С.Гольдберг. Англо русский энергетический словарь. 2006 г.] Тематики энергетика в целом EN cycle flu >Справочник технического переводчика

тело (внутренняя часть информационного объекта) — Примеры сочетаний: cycle тело цикла, program тело программы. [http://www.morepc.ru/dict/] Тематики информационные технологии в целом EN body … Справочник технического переводчика

Тело (программирование) — Связать? … Википедия

Тело (повесть) — У этого термина существуют и другие значения, см. Тело. Тело The Body Жанр: повесть, психологический реализм Автор: Стивен Кинг Язык оригинала: английски … Википедия

Читайте также:  Acrobat reader печать документа невозможна

Нарушения менструального цикла — Изменения во время цикла: А Созревание фолликула В Изменение уровня гормонов: 1 Фолликулостимулирующий гормон 2 Эстрогены 3 Лютеинизирующий гормон 4 Прогестерон Менструальный цикл от лат. menstruus («лунный цикл», ежемесячный) периодические … Википедия

Персонажи цикла «Меч Истины» — Содержание 1 Главные герои 1.1 Кэлен Амнелл 1.2 Ричард Рал … Википедия

Жёлтое тело — Стадии развития фолликула Жёлтое тело яичника (лат. corpus luteum) временная железа внутренней секреции в женском организме, образующаяся после … Википедия

Желтое тело — Стадии развития фолликула Жёлтое тело яичника (лат. corpus luteum) временная железа внутренней секреции в женском организме, образующаяся после овуляции и вырабатывающая гормон прогестерон. Название жёлтое тело получило благодаря жёлтому цвету… … Википедия

Цикл заставляет интерпретатор JavaScript многократно выполнять один и тот же блок кода, называемый телом цикла. Каждое отдельное исполнение инструкций в теле цикла называется итерацией. В JavaScгipt доступны четыре инструкции циклов: while , do/while , for и for/in .

Цикл while

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

Следующий цикл while исполняется, пока значение переменной i меньше 3:

После окончания третьей итерации условие i true :

Это общепринятый способ создания бесконечного цикла. В прочих случаях (к примеру, если в рассмотренном нами примере убрать в коде i++) возможен вариант (в теории) создания бесконечного цикла. На практике, браузер выведет сообщение о «зависшем» скрипте и посетитель его остановит.

Цикл do. while

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

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

Пример do. while:

Этот цикл продолжается, пока переменная i меньше 4. Она равна в начале цикла и увеличивается на 1 на каждой итерации.

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

Цикл for

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

  1. Инициализация. Присваивается первоначальное значение переменной, обычно – счетчика. Выполняется только один раз в начале выполнения оператора. Областью действия этой переменной будет тело цикла.
  2. Выражение – булево выражение, которое вычисляется на каждой итерации цикла. Представляет собой условие продолжения работы оператора цикла. После того, как значение счетчика достигнет указанного предела, цикл завершится.
  3. Обновление – это значение, на которое будет увеличиваться или уменьшаться счетчик цикла. Вычисляется по завершении каждой итерации цикла. Чтобы оно было полезным, как и выражение инициализации, оно должно иметь побочные эффекты. В общем случае таким побочным эффектом служит операция присваивания, инкремента или декремента.
Читайте также:  Usb хабы с дополнительным питанием

Пример цикла for:

Рассмотрим выполнение этого цикла более подробно:

  1. Инициализация: Переменная-счетчик, в данном случае х, инициализируется значением 1. Выполняется один-единственный раз, при заходе в цикл.
  2. Выражение:x true → тело цикла → обновление (x++)) → (если условие выражения true → тело цикла → обновление (x++)) → … и так далее, пока верно условие – x Скрыть результаты

Использование for без блоков

Все три выражения в заголовке цикла for являются необязательными.

Например, в блоке инициализации не требуется инициализировать переменные. Цикл в примере ниже полностью идентичен приведённому выше:

Как и блок инициализации, блок выражения также не является обязательным. Если вы опускаете выражение, то вы должны обязательно разбить цикл в теле, чтобы не создавать бесконечный цикл:

Можно опустить все три блока. Для избежания зацикливания используйте break для завершения цикла, а также изменяйте (увеличивайте или уменьшайте) переменную-счётчик, так чтобы условие для оператора break в какой-то момент сработало:

Примечание: Любое из выражений в цикле for может отсутствовать, однако сами точки с запятой обязательно должны присутствовать, иначе будет синтаксическая ошибка.

Цикл for. in

Цикл for. in используется для перебора всех свойств из объекта в случайном порядке и имеет следующий синтаксис:

В качестве nеременной (variable) можно подставить имя переменной или инструкцию var, объявляющую одну переменную. Переменной перед началом каждой итерации цикла присваивается в виде строки имя одного из свойств объекта. Как и в цикле for, оператор var здесь не обязателен, но его рекомендуется использовать, чтобы переменная была локальной. Справа от ключевого слова in указывается объект, свойства которого будут перебираться циклом. Если переменная, представляющая объект, будет иметь значение null или undefined цикл не выполнится ни разу. И как обычно, инструкция – это инструкция или блок инструкций, образующих тело цикла.

Пример итерации по свойствам объекта:

Как отмечалось ранее, если имя свойства хранится в переменной, то обратиться к нему можно только через квадратные скобки (myCar[prop]), а не через оператор «точка».

Свойства объектов в JavaScript не упорядочены, поэтому порядок возврата их имен в цикле for. in предсказать сложно. Все перечислимые свойства будут возвращены, но порядок их вывода может зависеть от браузера.

Согласно стандарта ECMAScript, если имя свойства – нечисловая строка, то такие свойства всегда перебираются в том же порядке, в каком присваивались. Так получилось в примере выше при выводе свойств объекта myCar. С другой стороны, если в качестве имени свойства выступает число или строка, которая может быть преобразована в числовой фомат, то браузеры осуществлят сортировку таких свойств в целях внутренней оптимизации. Вывод таких имен свойств объекта не будет соответствовать их оригинальному расположению.

Вложенные циклы

Цикл внутри другого цикла называется вложенным. Вложенность циклов формально не ограничивается, однако нужно быть предельно осторожным, чтобы не допустить зацикливания. При каждой итерации внешнего цикла вложенный цикл выполняется полностью. Вложенные циклы можно создавать с помощью инструкции for и инструкции while .

Пример вложенного цикла:

Теперь попытаемся разобраться, как это работает. Первый (внешний) цикл после каждой итерации увеличивает значение переменной i, а второй (внутренний) – переменной j. За одну итерацию внешнего цикла внутренний выполняется девять раз. По условию (i switch и передает управление операторам, следующим за ними.

Читайте также:  Xeon e3110 vs e8400

В следующем примере создаётся счётчик, значения которого должны изменяться от 1 до 99 , однако оператор break прерывает цикл после 4 итераций:

Для вложенных циклов оператор break используется с меткой, с помощью которой завершается работа «меченой» инструкции. Метка позволяет выйти из любого блока кода. Метка имеет вид "имя_метки:" , имя должно быть уникальным. Она ставится перед циклом или блоком инструкций, которые нужно завершить с помощью break :

Указание имени метки (без двоеточия) за ключевым словом break приводит к выходу из цикла или инструкции. Между ключевым словом break и именем метки не допускается перевод строки. Вызов break inner завершит вложенный цикл, а break outer ищет ближайший внешний цикл с такой меткой и переходит в его конец.

Оператор continue прерывает текущее выполнение цикла и переходит к выполнению следующего шага этого цикла. При этом, цикл while возвращается непосредственно к своему условию, а цикл for сначала вычисляет выражение инкремента, а затем возвращается к условию.

В теле цикла инструкция if с помощью оператора (%) проверяет, является ли число четным. Если да, итерация цикла завершается до увеличения переменной num , но цикл продолжается со следующей итерации со значением i , увеличенным на единицу. Затем цикл выполняется до естественного завершения при значении i , равном 10. Переменная num подсчитывает количество итераций цикла. Окончательное значение num равно 5, а не 9, потому что четные операции инкремента пропускаются из-за оператора continue .

Оператор continue , как и break , можно использовать вместе с «помеченными» инструкциями для возврата к конкретному месту в коде. Чаще всего это делается во вложенных циклах, например:

В этом примере для внешнего цикла for добавлена метка outer_mask. Каждый цикл включает 5 итераций, то есть инструкция num++ предположительно должна быть выполнена 25 раз, после чего переменная num должна быть равна 25. Оператор continue завершает выполнение внутреннего цикла, начиная новую итерацию внешнего. Она выполняется, когда j равно 3, то есть пропускаются две итерации внутреннего цикла, из-за чего num в итоге имеет значение 23.

Число «задом наперед»

Пользователь вводит целое число. Напишите код, который выведет число, обратное по порядку составляющих его цифр введенному. Например, введено 9876, надо вывести 6789. Решите задачу через цикл while.

  1. Найдем остаток от деления на 10 исходного числа num1 . Получим его последнюю цифру digit .
  2. Добавим эту цифру к новому числу num2 .
  3. Разделим нацело на 10 исходное число num1 и округлим до целых. Тем самым избавимся от последней цифры в нем. Полученное число сохраним в num1 .
  4. Снова найдем остаток от деления на 10 того, что осталось от первого числа num1 . Запомним эту цифру.
  5. Умножим на 10 второе число. Тем самым увеличим его разрядность до двух и сдвинем первую цифру в разряд десятков.
  6. Добавим к полученному второму числу запомненную ранее цифру digit из первого числа.
  7. Будем повторять перечисленные действия пока исходное число не уменьшится до нуля, т.е. пока не избавимся от всех его разрядов.

Оставьте ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *