На Горох
Информатика

22. Работаем со счетчиками

"Информатика (в 2 частях)", Павлов Д.И., Полежаева О.А., Коробкова Л.Н. и др./ Под ред. Горячева А.В.

Объяснение темы В оглавлении: 22. Работаем со счетчиками

Кратко о теме

Счётчик — это переменная, которая меняется по заданному правилу и помогает программе вести подсчёт. С его помощью можно узнать число повторений цикла, посчитать объекты, подходящие под условие, или перебрать числа в диапазоне. До начала работы задают начальное значение, а при каждом нужном проходе изменяют счётчик на выбранный шаг. Главное — согласовать начальное значение, шаг и условие завершения цикла.

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

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

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

Счётчик — переменная, значение которой изменяется по заданному правилу, чтобы учитывать количество повторений или объектов. Например, переменная может последовательно получать значения 1, 2, 3 и так далее. Счётчик нужен, чтобы программа могла вести подсчёт без ручного вмешательства.

Начальное значение счётчика — значение, присваиваемое ему до начала повторений; оно задаёт точку отсчёта. Если отсчёт должен начинаться с первого повторения, записывают 1, а для подсчёта найденных объектов часто используют 0. Благодаря этому программа начинает работу с заранее понятного состояния.

Шаг счётчика — величина, на которую счётчик изменяется при каждом повторении. Положительный шаг увеличивает значение, а отрицательный уменьшает его: при шаге 2 получаются 2, 4, 6, а при шаге −1 — 5, 4, 3. Шаг задаёт направление и скорость изменения счётчика.

Счётчик повторений — переменная, которую изменяют на каждом проходе цикла и используют для подсчёта выполненных повторений. Она может одновременно показывать номер текущего прохода. Такой счётчик помогает ограничить цикл нужным количеством шагов.

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

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

В теле цикла счётчик изменяют на заданный шаг. Это нужно для перехода к следующему состоянию: при шаге 1 к значению прибавляют единицу, а при шаге −1 вычитают единицу. Если значение вообще не меняется, цикл может повторять одни и те же действия бесконечно.

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

Счётчик может управлять числом повторений цикла. Начальное значение определяет первый проход, шаг — переход к следующему значению, а условие завершения — момент остановки. Если эти части согласованы, цикл выполняет именно нужное количество повторений, а не больше или меньше.

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

Варианты использования счётчика

СитуацияНачальное значениеКогда изменяетсяШаг измененияДля чего используется
Подсчёт повторений цикла1 или 0После каждого проходаОбычно 1Определить номер и число повторений
Подсчёт объектов, удовлетворяющих условию0Только при выполнении условия1Получить количество подходящих объектов
Перебор чисел в заданном диапазонеПервое число диапазонаПосле каждого проходаЗаданный, в том числе отрицательныйПосетить все нужные значения

Сначала определите, что именно должен считать счётчик: все проходы, подходящие объекты или значения диапазона. Затем проверьте начальное значение и момент изменения переменной. Последними сопоставьте шаг и условие окончания, особенно если счётчик уменьшается.

Разбор задач

Пять повторений с отсчётом от 1

Нужно организовать пять повторений команды и нумеровать их начиная с 1. Значит, счётчик должен принимать значения 1, 2, 3, 4 и 5. После каждого повторения его следует увеличивать на единицу.

  1. Задать счётчику начальное значение 1.
  2. Пока значение не превышает 5, выполнить команду.
  3. После команды увеличить счётчик на 1 и снова проверить условие.

Ответ: тело цикла выполнится пять раз. Значения счётчика на проходах будут 1, 2, 3, 4 и 5, после чего он станет равен 6, и цикл завершится.

Подсчёт положительных чисел

Нужно ввести десять чисел и узнать, сколько из них положительные. Здесь счётчик не должен увеличиваться просто за просмотр числа, потому что нулевые и отрицательные значения считать нельзя. Поэтому его обнуляют до цикла и меняют только после успешной проверки условия «число больше 0».

  1. Присвоить счётчику подходящих чисел значение 0.
  2. Десять раз ввести очередное число и проверить, является ли оно положительным.
  3. Если условие истинно, увеличить счётчик на 1; если ложно, оставить его без изменения.
  4. После десятого ввода вывести значение счётчика.

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

Перебор от 20 до 2 с шагом −2

Нужно перебрать числа 20, 18, 16 и так далее до 2, а затем посчитать среди них числа, делящиеся на 3. Счётчик перебора и счётчик подходящих чисел здесь выполняют разные задачи. Первый уменьшается на 2, а второй увеличивается на 1 только при выполнении проверки делимости.

  1. Задать числу для перебора начальное значение 20, а счётчику подходящих чисел — 0.
  2. Пока число для перебора не меньше 2, проверить, делится ли оно на 3 без остатка.
  3. При успешной проверке увеличить счётчик подходящих чисел на 1.
  4. После проверки уменьшить число для перебора на 2 и повторять действия до значения 2.

Ответ: рассматриваемая последовательность — 20, 18, 16, 14, 12, 10, 8, 6, 4, 2. На 3 делятся 18, 12 и 6, поэтому итоговый счётчик равен 3.

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

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

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

Увеличивают счётчик при каждом проходе, хотя нужно считать только подходящие объекты. Так бывает, если проверку условия забывают связать с командой увеличения. Проверьте, изменяется ли счётчик на примере объекта, который условию не соответствует.

При отрицательном шаге задают условие продолжения, рассчитанное на возрастание. Из-за этого цикл может завершиться сразу или не завершиться вовсе. Запишите два первых значения и убедитесь, что каждое изменение приближает счётчик к границе остановки.

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

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

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

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

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

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

Зачем перед циклом обнулять счётчик?

Ноль означает, что подходящих объектов пока не найдено. Если не обнулить счётчик, в нём может остаться случайное или старое значение, и результат окажется неверным.

Чем счётчик повторений отличается от счётчика подходящих объектов?

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

Можно ли задать счётчику шаг, отличный от 1?

Да, шаг может быть любым подходящим числом, например 2, 5 или −1. От шага зависит, как быстро счётчик будет увеличиваться или уменьшаться.

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

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

Что проверить, если цикл со счётчиком не заканчивается?

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

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

22. Работаем со счетчиками

Учебник

Оглавление →
Предмет
Информатика
Учебник
"Информатика (в 2 частях)", Павлов Д.И., Полежаева О.А., Коробкова Л.Н. и др./ Под ред. Горячева А.В.