Счётчик: переменная считает вместе с циклом

Учим переменную считать вместе с циклом: делаем счётчик собранных монет и копилку очков.

Счётчик — это переменная, которая считает события (например, сколько монет собрано), увеличиваясь на 1 при каждом из них.

Переменная и цикл — лучшие друзья

Помнишь циклы из раздела 3? И переменные из прошлого урока? Когда они работают вместе — начинается настоящая магия. Самый частый приём — счётчик: переменная, которая прибавляет себе единичку каждый раз, когда что-то случилось.

Например, герой бежит по уровню и собирает монетки. Каждая монетка — плюс один к счётчику. Сделаем так: заведём коробочку coins со значением 0, а потом в цикле пять раз прибавим по одной монетке.

coins = 0
for i in range(5):
    coins = coins + 1
print("Собрано монет:", coins)

Вывод:

Собрано монет: 5

Разберём, что произошло:

  • Сначала coins = 0 — копилка пустая.
  • Цикл повторяется 5 раз. На каждом повторе coins = coins + 1 добавляет одну монетку.
  • После цикла печатаем итог. 0, потом 1, 2, 3, 4 — и наконец 5 монет!

Заметь важную вещь: коробочку coins = 0 мы создали до цикла, а печатаем после цикла. Если бы мы напечатали внутри цикла, увидели бы каждый шаг.

Посмотрим на счётчик в движении

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

coins = 0
for i in range(5):
    coins = coins + 1
    print("Монета поймана! Всего:", coins)

Вывод:

Монета поймана! Всего: 1
Монета поймана! Всего: 2
Монета поймана! Всего: 3
Монета поймана! Всего: 4
Монета поймана! Всего: 5

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

Счётчик в Scratch

В Scratch для этого есть синие блоки переменных «поставить [монеты] в 0» и «изменить [монеты] на 1». «Изменить на 1» — это и есть наше coins = coins + 1:

поставить [монеты] в 0
повторить 5 раз
    изменить [монеты] на 1
сказать монеты

Та же идея, что и в Python: обнулили счётчик, в цикле прибавляли по одной, в конце показали результат.

Попробуй сам

Герой делает зарядку — приседает 8 раз. Счётчик считает приседания. Запусти, потом поменяй число повторов.

prisedaniya = 0
for i in range(8):
    prisedaniya = prisedaniya + 1
print("Сделано приседаний:", prisedaniya)

Вывод:

Сделано приседаний: 8

Частые ошибки

  • Создать счётчик внутри цикла. Если написать coins = 0 внутри цикла, он будет обнуляться на каждом повторе и никогда не вырастет. Обнуляй счётчик до цикла!
  • Забыть прибавлять. Без строчки coins = coins + 1 счётчик так и останется нулём. Не забудь добавлять единичку на каждом шаге.

Что мы узнали

  • Счётчик — переменная, которая считает события, прибавляя по 1.
  • Счётчик создают (обнуляют) до цикла, а итог печатают после.
  • В Scratch это блоки «поставить в 0» и «изменить на 1».
Проверьте себя
1. Где нужно обнулять счётчик (coins = 0)?
AВнутри цикла
BДо цикла, чтобы он не обнулялся на каждом повторе
CПосле цикла
DЭто не важно
2. Что делает строчка coins = coins + 1 в цикле?
AОбнуляет счётчик
BПрибавляет к счётчику единицу на каждом повторе
CУдаляет переменную
DПечатает coins
3. Чему будет равен coins после цикла for i in range(5), если внутри coins = coins + 1, а перед циклом coins = 0?
A0
B1
C5
D10
Поддержать проект