"Информатика (в 2 частях)", Павлов Д.И., Полежаева О.А., Коробкова Л.Н. и др./ Под ред. Горячева А.В.
Счётчик — это переменная, которая меняется по заданному правилу и помогает программе вести подсчёт. С его помощью можно узнать число повторений цикла, посчитать объекты, подходящие под условие, или перебрать числа в диапазоне. До начала работы задают начальное значение, а при каждом нужном проходе изменяют счётчик на выбранный шаг. Главное — согласовать начальное значение, шаг и условие завершения цикла.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Счётчик — переменная, значение которой изменяется по заданному правилу, чтобы учитывать количество повторений или объектов. Например, переменная может последовательно получать значения 1, 2, 3 и так далее. Счётчик нужен, чтобы программа могла вести подсчёт без ручного вмешательства.
Начальное значение счётчика — значение, присваиваемое ему до начала повторений; оно задаёт точку отсчёта. Если отсчёт должен начинаться с первого повторения, записывают 1, а для подсчёта найденных объектов часто используют 0. Благодаря этому программа начинает работу с заранее понятного состояния.
Шаг счётчика — величина, на которую счётчик изменяется при каждом повторении. Положительный шаг увеличивает значение, а отрицательный уменьшает его: при шаге 2 получаются 2, 4, 6, а при шаге −1 — 5, 4, 3. Шаг задаёт направление и скорость изменения счётчика.
Счётчик повторений — переменная, которую изменяют на каждом проходе цикла и используют для подсчёта выполненных повторений. Она может одновременно показывать номер текущего прохода. Такой счётчик помогает ограничить цикл нужным количеством шагов.
Для подсчёта повторений программе нужна переменная-счётчик. Перед циклом ей задают начальное значение, потому что без точки отсчёта программа не знает, какое число считать первым. Например, при пяти повторениях удобно начать с 1 и после каждого прохода переходить к следующему номеру.
В теле цикла счётчик изменяют на заданный шаг. Это нужно для перехода к следующему состоянию: при шаге 1 к значению прибавляют единицу, а при шаге −1 вычитают единицу. Если значение вообще не меняется, цикл может повторять одни и те же действия бесконечно.
Чтобы подсчитать объекты, отвечающие условию, счётчик сначала обнуляют. Затем программа по очереди проверяет каждый объект, а увеличение выполняет только после истинного результата проверки. Поэтому в итоге число в счётчике показывает не общее количество просмотренных объектов, а количество подходящих.
Счётчик может управлять числом повторений цикла. Начальное значение определяет первый проход, шаг — переход к следующему значению, а условие завершения — момент остановки. Если эти части согласованы, цикл выполняет именно нужное количество повторений, а не больше или меньше.
При разборе цикла полезно проследить значения счётчика по проходам. Для каждого шага записывают текущее значение, проверяют условие и отмечают изменение переменной. Так легко увидеть, приближается ли счётчик к границе и станет ли условие завершения истинным.
| Ситуация | Начальное значение | Когда изменяется | Шаг изменения | Для чего используется |
|---|---|---|---|---|
| Подсчёт повторений цикла | 1 или 0 | После каждого прохода | Обычно 1 | Определить номер и число повторений |
| Подсчёт объектов, удовлетворяющих условию | 0 | Только при выполнении условия | 1 | Получить количество подходящих объектов |
| Перебор чисел в заданном диапазоне | Первое число диапазона | После каждого прохода | Заданный, в том числе отрицательный | Посетить все нужные значения |
Сначала определите, что именно должен считать счётчик: все проходы, подходящие объекты или значения диапазона. Затем проверьте начальное значение и момент изменения переменной. Последними сопоставьте шаг и условие окончания, особенно если счётчик уменьшается.
Нужно организовать пять повторений команды и нумеровать их начиная с 1. Значит, счётчик должен принимать значения 1, 2, 3, 4 и 5. После каждого повторения его следует увеличивать на единицу.
Ответ: тело цикла выполнится пять раз. Значения счётчика на проходах будут 1, 2, 3, 4 и 5, после чего он станет равен 6, и цикл завершится.
Нужно ввести десять чисел и узнать, сколько из них положительные. Здесь счётчик не должен увеличиваться просто за просмотр числа, потому что нулевые и отрицательные значения считать нельзя. Поэтому его обнуляют до цикла и меняют только после успешной проверки условия «число больше 0».
Ответ: выведенное значение равно количеству положительных чисел среди десяти введённых. Например, если положительными оказались 6 чисел, результатом будет 6.
Нужно перебрать числа 20, 18, 16 и так далее до 2, а затем посчитать среди них числа, делящиеся на 3. Счётчик перебора и счётчик подходящих чисел здесь выполняют разные задачи. Первый уменьшается на 2, а второй увеличивается на 1 только при выполнении проверки делимости.
Ответ: рассматриваемая последовательность — 20, 18, 16, 14, 12, 10, 8, 6, 4, 2. На 3 делятся 18, 12 и 6, поэтому итоговый счётчик равен 3.
Не задают начальное значение до цикла. Так происходит, когда считают, что новая переменная сама начнёт с нуля, хотя в ней может быть неопределённое или старое значение. Проверьте первую строку алгоритма: присваивание должно находиться до первого использования счётчика.
Изменяют счётчик не на каждом нужном проходе или делают это несколько раз. Ошибка возникает, когда изменение случайно помещают не в ту часть цикла или повторяют его в двух местах. Составьте первые несколько значений и сравните их с ожидаемыми: один проход должен давать один предусмотренный переход.
Увеличивают счётчик при каждом проходе, хотя нужно считать только подходящие объекты. Так бывает, если проверку условия забывают связать с командой увеличения. Проверьте, изменяется ли счётчик на примере объекта, который условию не соответствует.
При отрицательном шаге задают условие продолжения, рассчитанное на возрастание. Из-за этого цикл может завершиться сразу или не завершиться вовсе. Запишите два первых значения и убедитесь, что каждое изменение приближает счётчик к границе остановки.
До работы со счётчиками нужно знать, что такое переменная и присваивание, потому что счётчик хранит значение и получает новые значения. Также необходимы условия и циклы: условие решает, выполнять ли действие, а цикл организует повторение. Без этих понятий трудно понять, когда и почему меняется счётчик.
Счётчики пригодятся при обработке последовательностей, поиске количества элементов по условию и составлении циклических алгоритмов. На их основе можно находить число положительных чисел, считать совпадения или перебирать значения диапазона. Эти приёмы встречаются во многих задачах обработки данных.
Зачем перед циклом обнулять счётчик?
Ноль означает, что подходящих объектов пока не найдено. Если не обнулить счётчик, в нём может остаться случайное или старое значение, и результат окажется неверным.
Чем счётчик повторений отличается от счётчика подходящих объектов?
Счётчик повторений изменяется на каждом проходе и показывает, сколько раз выполнился цикл. Счётчик подходящих объектов изменяется только тогда, когда очередной объект соответствует условию.
Можно ли задать счётчику шаг, отличный от 1?
Да, шаг может быть любым подходящим числом, например 2, 5 или −1. От шага зависит, как быстро счётчик будет увеличиваться или уменьшаться.
Как определить, сколько раз выполнится цикл со счётчиком?
Нужно выписать начальное значение, шаг и значения, при которых условие продолжения остаётся истинным. Затем посчитать эти проходы, не забывая проверить последний допустимый элемент.
Что проверить, если цикл со счётчиком не заканчивается?
Проверьте, изменяется ли счётчик на каждом проходе и движется ли он к границе завершения. При отрицательном шаге условие должно соответствовать уменьшению значения, иначе цикл может стать бесконечным.
22. Работаем со счетчиками