"Информатика (в 2-х частях)", Горячев А.В., Макарина Л.А., Паволоцкий А.В., Платонова Н.С.
Цикл — конструкция алгоритма, которая повторяет одни и те же команды. Он нужен, когда действие требуется выполнить несколько раз: например, вывести сообщение, сложить числа или обработать вводимые данные. Повторение можно задать заранее или продолжать, пока выполняется условие. Чтобы цикл отработал правильно, нужно понимать, когда проверяется условие, как меняются переменные и что именно входит в тело цикла.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Цикл — команда или конструкция алгоритма, которая организует многократное выполнение действий. Он нужен, когда одинаковую работу требуется повторить, но не хочется записывать одну и ту же команду снова и снова. Например, цикл может несколько раз вывести сообщение или выполнить вычисление.
Тело цикла — последовательность команд, повторяемая при выполнении цикла. В него помещают именно те действия, которые должны повториться, например вывод слова или прибавление числа к сумме. Остальные команды алгоритма выполняются отдельно и не повторяются автоматически.
Итерация — одно выполнение тела цикла. Если тело сработало пять раз, говорят, что цикл выполнил пять итераций. Это понятие помогает считать повторы и прослеживать, как меняются значения переменных от одного выполнения тела к следующему.
Условие продолжения цикла — проверяемое выражение, от результата которого зависит, будет ли цикл выполняться дальше. Оно может сравнивать значения, например проверять, меньше ли счётчик заданного числа. По результату проверки алгоритм решает, повторять тело или перейти к следующим командам.
Циклы нужны, когда одно и то же действие приходится выполнять несколько раз. Если записывать команды отдельно, алгоритм быстро становится длинным, а исправлять одинаковые фрагменты неудобно. Вместо этого повторяемые команды помещают в тело цикла и задают правило повторения. Так алгоритм описывает не каждое действие по отдельности, а общий способ их выполнить.
В цикле с известным числом повторений заранее указывают количество итераций. Алгоритм выполняет тело указанное число раз, поэтому такой способ удобен, например, для вывода пяти одинаковых сообщений. Счётчик или другое правило помогает отследить, сколько повторов уже прошло. Если число задано правильно, повторение завершится после нужной итерации.
В цикле с условием число повторений заранее может быть неизвестно. Перед очередной итерацией алгоритм проверяет условие продолжения и выполняет тело, если условие истинно. Затем проверка проводится снова, чтобы решить, нужна ли следующая итерация. Такой цикл удобен, когда остановка зависит от поступивших данных или достигнутого результата.
Чтобы цикл с условием завершился, данные, влияющие на проверку, должны изменяться. Например, если условие проверяет, меньше ли счётчик десяти, в теле нужно увеличивать счётчик. Иначе проверка будет снова давать тот же результат, и повторение не остановится. Поэтому при составлении цикла заранее выясняют, какое изменение со временем сделает условие ложным.
Результат цикла находят, прослеживая его выполнение по итерациям. Сначала выписывают начальные значения переменных, затем применяют команды тела и записывают новые значения. Для цикла с условием также отмечают, когда именно выполняется проверка и какой ответ она даёт. По такой записи можно определить и итог вычислений, и число повторений.
| Характеристика | Цикл с известным числом повторений | Цикл с условием |
|---|---|---|
| Что задаёт число повторений | Заранее заданное количество итераций | Результат проверок условия |
| Когда проверяется условие продолжения | Повторение задаётся известным количеством | Перед очередной итерацией |
| Когда удобно применять | Когда заранее известно число повторов | Когда остановка зависит от условия или данных |
| Что нужно проверить, чтобы цикл завершился | Что выполнено заданное количество итераций | Что условие перестало быть истинным |
Сначала выясни, известно ли число повторений до начала работы алгоритма. Если известно, удобен первый способ; если нужно ждать наступления условия, выбирай второй. Затем проверь, как именно цикл завершает работу.
Задача 1. Вывести слово «Привет» пять раз. Количество повторений известно заранее, поэтому подойдёт цикл с заданным числом итераций. Команда вывода слова будет телом цикла. Нужно следить, чтобы тело выполнилось ровно пять раз.
Ответ: алгоритм пять раз выводит слово «Привет».
Задача 2. Найти сумму целых чисел от 1 до 10. Нужно повторить сложение десять раз, каждый раз прибавляя очередное число. Для этого понадобятся переменная-счётчик, которая показывает текущее число, и переменная суммы. Сумму сначала принимают равной нулю, чтобы прибавления начинались с правильного результата.
Ответ: сумма равна 55. При проверке можно убедиться, что первое прибавленное число — 1, последнее — 10, а каждое число между ними учтено один раз.
Задача 3. Вводить числа и находить их сумму, пока не введён ноль; ноль не включать в сумму. Число вводов заранее неизвестно, поэтому повторение зависит от введённого значения. Ноль здесь служит сигналом остановки, а не слагаемым. Проверять его нужно до прибавления числа к сумме.
Ответ: алгоритм складывает все введённые числа, кроме нуля, и останавливается при его появлении. Если сначала прибавить число, а потом проверить его, ноль попадёт в обработку, хотя он должен только завершить цикл.
Первая ошибка — считать, что тело цикла выполнится один раз независимо от условий или заданного количества повторов. Так думают, если не проследили, где начинается цикл и по какому правилу он заканчивается. Проверь, сколько раз алгоритм входит в тело, и отдельно отметь действие, после которого цикл останавливается. Для цикла с известным количеством сравни число итераций с заданным числом.
Вторая ошибка — забыть изменить переменную, влияющую на условие продолжения. Её допускают, когда условие записано, но не проверено вместе с командами тела. Если значение переменной не меняется, условие может оставаться истинным бесконечно. Проверь, какое действие приближает условие к завершению и выполняется ли оно на каждой нужной итерации.
Третья ошибка — неправильно определить границу повторений и выполнить на одну итерацию больше или меньше. Это часто случается, если не проверить начальное и конечное значения счётчика. Выпиши их по порядку и посчитай, сколько чисел попадает в заданный диапазон. Убедись, что первая и последняя итерации соответствуют условию задачи.
Четвёртая ошибка — обработать значение, которое должно только остановить цикл. Например, ноль вводят как сигнал завершения, но по ошибке прибавляют к сумме. Причина обычно в том, что число сначала обрабатывают, а потом проверяют. Чтобы себя проверить, установи порядок команд: сначала ввод, затем проверка сигнала, и только после неё обработка обычного значения.
Для работы с циклами нужны навыки чтения алгоритмов и выполнения команд по порядку. Переменные позволяют хранить значения, которые меняются от итерации к итерации, а условия помогают определить, продолжать повторение или остановиться. Без этих понятий трудно проследить, как именно работает цикл.
Циклы применяются при обработке последовательностей данных, вычислении сумм и поиске нужных значений. Они встречаются в алгоритмах и программах, где одни действия приходится выполнять много раз. Умение прослеживать изменения переменных помогает проверять такие алгоритмы и находить ошибки.
Зачем использовать цикл, если команды можно просто написать несколько раз?
Цикл позволяет не копировать одинаковые команды много раз, поэтому алгоритм получается короче и понятнее. Если нужно изменить повторяемое действие, достаточно поправить его в одном месте.
Чем отличается цикл с известным числом повторений от цикла с условием?
В первом случае заранее задают, сколько раз выполнить тело цикла. Во втором повторение зависит от проверки условия: цикл продолжается, пока оно истинно.
Что называют телом цикла и итерацией?
Тело цикла — это команды, которые повторяются. Итерация — одно выполнение всего тела.
Почему цикл может выполняться бесконечно?
Так бывает, если условие продолжения всё время остаётся истинным. Например, алгоритм не изменяет переменную, от которой зависит это условие.
Как проверить, сколько раз выполнится цикл?
Проследи по шагам, сколько раз выполняются команды тела и когда проверяется условие. Записывай значения переменных после каждой итерации и отметь момент, когда повторение заканчивается.
§ 5–6. Циклы