Fizz Buzz — это детская игра на счёт по кругу. Дети считают вслух: «1, 2, …», но вместо чисел, кратных трём, говорят «Fizz», вместо кратных пяти — «Buzz», а если число кратно и трём, и пяти — «FizzBuzz». Наша программа просто «играет» в эту игру за нас и записывает всё, что было сказано, в списокИзменяемая упорядоченная коллекция элементов: [1, 2, 3]. По-английски list..
Условие
Верните список строкТекстовое значение в кавычках: "привет". Неизменяема. По-английски string (str). для чисел от 1 до n: если число делится на 3 — "Fizz", на 5 — "Buzz", на 3 и 5 одновременно — "FizzBuzz", иначе само число строкой.
▶ fizzbuzz.py
Что здесь происходит
range(1, n + 1) — числа от 1 до n включительно (правая граница не входит, поэтому + 1).
i % 15 == 0 — оператор % даёт остаток от деления. Остаток 0 означает «делится нацело». Делимость на 15 = делимость и на 3, и на 5 сразу.
Цепочка if / elif / else проверяет условия по порядку и срабатывает на первом подходящем.
str(i) — превращаем число в строку, чтобы весь список был однородным (только строки).
⚠️Осторожно
Порядок проверок важен! Условие «делится на 15» (то есть и на 3, и на 5) надо проверять первым. Иначе число 15 поймается на «делится на 3» и вы не дойдёте до FizzBuzz.
💡Совет
🔮 Предскажите вывод
Что будет на 6-й позиции (число 6) в результате fizz_buzz(10)? А на 10-й (число 10)? Вспомните правила делимости, прежде чем смотреть.
▶ predict-fizzbuzz.py
Число 6 делится на 3 → "Fizz". Число 10 делится на 5 → "Buzz". Обратите внимание: индексНомер позиции элемента в последовательности. В Python нумерация с нуля: первый элемент — индекс 0. на единицу меньше самого числа, ведь список начинается с нуля, а счёт — с единицы.
⚠️ Частые ошибки новичков
Классическая ошибка — проверять % 3 раньше % 15. Тогда «FizzBuzz» никогда не появится. Запустите сломанный код: для 15 он выдаёт «Fizz» вместо «FizzBuzz». Переставьте проверку i % 15 == 0 в начало.
▶ broken-fizzbuzz.py
Заданиелёгкаярешение.py
Реализуйте fizz_buzz(n), возвращающую список строк по правилам Fizz Buzz для чисел от 1 до n.
Заданиелёгкаярешение.py
Дополнительное упражнение. Напишите count_fizzbuzz(n), которая возвращает, сколько чисел от 1 до n дают «FizzBuzz» (то есть делятся на 15).
❓Проверь себя
Что вычисляет оператор % (например, 17 % 5)?
Почему проверку делимости на 15 ставят первой?
ℹ️Важно
✅ Что вы узнали
Оператор % даёт остаток; остаток 0 = делится нацело.
В цепочке if/elif порядок условий определяет результат — строгие условия идут первыми.
str(i) приводит число к строке, чтобы список был однородным.
Комментарии
Загрузка…
Загрузка комментариев…