Счётчик: переменная считает вместе с циклом
Учим переменную считать вместе с циклом: делаем счётчик собранных монет и копилку очков.
Счётчик — это переменная, которая считает события (например, сколько монет собрано), увеличиваясь на 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».