Fizz Buzz Python: методы решения проблемы Fizz Buzz

“Fizz Buzz” – популярное упражнение по программированию, которое часто используется на собеседованиях для оценки базовых навыков программирования кандидата. Он включает в себя печать чисел от 1 до заданного числа, но для чисел, кратных трем, вместо числа печатается «Fizz», а для чисел, кратных пяти, вы печатаете «Buzz». Для чисел, кратных трем и пяти, вы печатаете «FizzBuzz». Вот несколько способов решения проблемы Fizz Buzz в Python:

Метод 1: использование цикла

def fizz_buzz(n):
    for i in range(1, n+1):
        if i % 3 == 0 and i % 5 == 0:
            print("FizzBuzz")
        elif i % 3 == 0:
            print("Fizz")
        elif i % 5 == 0:
            print("Buzz")
        else:
            print(i)

Метод 2: понимание списка

def fizz_buzz(n):
    result = ["FizzBuzz" if i % 3 == 0 and i % 5 == 0 else "Fizz" if i % 3 == 0 else "Buzz" if i % 5 == 0 else i for i in range(1, n+1)]
    print(result)

Метод 3. Использование функции-генератора

def fizz_buzz(n):
    for i in range(1, n+1):
        if i % 3 == 0 and i % 5 == 0:
            yield "FizzBuzz"
        elif i % 3 == 0:
            yield "Fizz"
        elif i % 5 == 0:
            yield "Buzz"
        else:
            yield i
# Example usage:
for num in fizz_buzz(15):
    print(num)