На Горох
Информатика, 7 класс

§ 10. Алгоритмическая конструкция повторение

"Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В.М. Котов, А.И. Лапо, Е.Н. Войтехович

Объяснение темы В оглавлении: § 10. Алгоритмическая конструкция повторение

Кратко о теме

Алгоритмическая конструкция «повторение» позволяет несколько раз выполнять одну или несколько команд, не записывая их заново. Повторяемые команды образуют тело цикла. В цикле с параметром число шагов задают начальным и конечным значениями и шагом изменения, а в циклах с условием повторение зависит от проверки условия. Предусловие проверяют до тела цикла, постусловие — после него.

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

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

Тело цикла — последовательность команд, которая повторяется в процессе выполнения цикла. Именно эти команды программа выполняет на каждом шаге. Выделение тела помогает ясно увидеть, что именно должно повторяться.

Цикл с параметром — повторение, в котором число шагов задаётся начальным значением, конечным значением и шагом изменения параметра. Параметр — переменная, которая по очереди принимает значения из заданного диапазона. Такой цикл удобен, когда количество повторений известно заранее.

Цикл с условием — повторение, продолжительность которого определяется условием. При предусловии условие проверяется до выполнения тела, а при постусловии — после него. Это позволяет продолжать действия до нужного события, например до ввода нуля.

Как это устроено

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

В цикле с параметром сначала параметр получает начальное значение. После выполнения тела он изменяется на заданный шаг, а затем сравнивается с конечным значением; если диапазон ещё не закончился, тело выполняется снова. Такой порядок нужен, чтобы каждое повторение работало с очередным значением параметра и чтобы цикл мог завершиться.

В цикле с предусловием условие проверяется до тела. Если оно истинно, команды выполняются, после чего условие проверяется снова; если оно ложно с самого начала, тело пропускается. Это подходит для ситуации, когда сначала нужно убедиться, что работу вообще следует начинать.

В цикле с постусловием сначала выполняется тело, а затем проверяется условие продолжения. Поэтому даже ложное начальное условие не мешает выполнить команды один раз. Такой вариант нужен, например, когда сначала надо получить данные, а уже потом решить, продолжать ли ввод.

Цикл с параметром выбирают, когда заранее известен диапазон или число повторений. Цикл с условием используют, если остановка зависит от значения переменной, результата вычисления или введённых данных. Выбор конструкции делает алгоритм понятнее и помогает не считать повторы вручную.

Сравнение видов циклов

ХарактеристикаЦикл с параметромЦикл с предусловиемЦикл с постусловием
Что определяет число повторенийНачальное и конечное значения параметра и шагИстинность условия перед началом очередного повторенияИстинность условия после выполнения очередного повторения
Когда проверяется условиеПосле изменения параметра и перед следующим повторениемДо выполнения тела циклаПосле выполнения тела цикла
Может ли тело не выполниться ни разуДа, если диапазон пустДа, если начальное условие ложноНет
Минимальное число выполнений тела001
Типичные случаи примененияИзвестный диапазон или счётчик повторенийПовторение до нарушения условия, проверяемого заранееВвод или действие, которое нужно выполнить хотя бы один раз

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

Разбор задач

Вывод пяти первых натуральных чисел

Нужно вывести числа 1, 2, 3, 4 и 5. Их количество известно, а значения образуют последовательность с началом 1, концом 5 и шагом 1, поэтому подходит цикл с параметром.

  1. Объявить параметр цикла и установить ему начальное значение 1.
  2. В теле цикла вывести текущее значение параметра.
  3. После вывода увеличить параметр на 1 и продолжать, пока он не выйдет за границу 5.

Ответ: будут выведены 1, 2, 3, 4, 5.

Сумма чисел от 1 до n

Вводится число n, а затем требуется найти сумму 1 + 2 + … + n. Здесь заранее известен диапазон изменения счётчика, поэтому удобно завести накопленную сумму и цикл с параметром.

  1. Ввести n и присвоить сумме начальное значение 0.
  2. Запустить параметр от 1 до n с шагом 1.
  3. На каждом повторении прибавлять текущее значение параметра к сумме.
  4. После завершения цикла вывести накопленную сумму.

Ответ: программа выведет сумму всех целых чисел от 1 до n.

Сумма чисел до появления нуля

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

  1. Создать сумму со значением 0 и ввести первое число.
  2. Пока число не равно 0, прибавлять его к сумме и вводить следующее число.
  3. Когда введён ноль, прекратить цикл и вывести сумму.
  4. В варианте с постусловием можно сначала добавить число только после проверки, чтобы ноль не попал в результат.

Ответ: получится сумма всех введённых чисел, расположенных до первого нуля.

Типичные ошибки

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

Путают условие продолжения с условием завершения. Из-за этого цикл заканчивается слишком рано или делает лишний повтор. Полезно словами проговорить: «повторять, пока…» и проверить это утверждение на первом и последнем шагах.

Ожидают от предусловия хотя бы один повтор. Если условие ложно до начала работы, тело такого цикла не выполняется. Подставьте начальные значения в условие и заранее определите, что произойдёт при первой проверке.

Неверно задают границы или шаг параметра. Так можно пропустить нужное значение, выйти за границу или получить лишнюю итерацию. Выпишите несколько первых и последних значений параметра и сравните их с требуемым диапазоном.

Связь с другими темами

До изучения повторений нужны переменные, присваивание, арифметические и логические выражения. Условия цикла строятся из логических выражений, а начальные значения задаются присваиванием. Полезно также знать ветвление, поскольку цикл часто содержит проверку и разные действия.

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

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

Что запомнить

  • Повторение позволяет многократно выполнять одно и то же тело алгоритма.
  • Тело цикла — команды, выполняемые на каждом повторении.
  • Цикл с параметром удобен, когда число повторений известно заранее.
  • При предусловии условие проверяется до выполнения тела.
  • При постусловии тело цикла выполняется хотя бы один раз.
  • Изменение управляющей переменной должно приближать выполнение к завершению цикла.
  • Неверное условие или шаг могут привести к пропуску повторений или бесконечному циклу.

Частые вопросы по теме

Чем цикл с предусловием отличается от цикла с постусловием?

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

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

Так происходит в цикле с предусловием, если условие сразу оказывается ложным. Программа проверяет его до первого выполнения тела и сразу переходит к следующей команде.

Когда лучше использовать цикл с параметром?

Его выбирают, когда заранее известно число повторений или диапазон значений. Например, он удобен для вывода чисел от 1 до 5 или вычисления суммы чисел от 1 до n.

Как избежать бесконечного цикла?

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

Как определить, сколько раз выполнится тело цикла?

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

Спросить по теме параграфа

§ 10. Алгоритмическая конструкция повторение

Учебник

Оглавление →
Предмет
Информатика
Класс
7 класс
Учебник
"Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В.М. Котов, А.И. Лапо, Е.Н. Войтехович