FizzBuzz
FizzBuzz — это игра на счёт. Игроки считают от 1, но некоторые числа заменяются словами: вместо числа, делящегося на 3, говорят Fizz, вместо числа, делящегося на 5, — Buzz, а вместо числа, делящегося и на 3, и на 5, — FizzBuzz. Все остальные числа называют как есть. Первые пятнадцать ходов проходят так: 1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz, 11, Fizz, 13, 14, FizzBuzz.
Весь секрет — в порядке проверок. 15 делится на 3, поэтому, если сначала проверить делимость на 3 и сразу вернуть "Fizz", ты не дойдёшь до случая, когда число делится на оба числа. Сначала проверь общее правило: число, которое делится и на 3, и на 5, — это число, которое делится на 15. Затем проверь делимость на 3, потом на 5 и только после этого верни само число.
В классической версии выводится вся последовательность. Здесь нужно отвечать для одного числа за раз: получив n, верни то, что игрок говорит на ходу n. Например, на ходу 9 говорят "Fizz", на ходу 10 — "Buzz", а на ходу 11 — "11".
Напиши функцию с именем fizzBuzz, которая принимает положительное целое число n и возвращает строку: "FizzBuzz", если n делится и на 3, и на 5, "Fizz", если оно делится только на 3, "Buzz", если оно делится только на 5, а в остальных случаях — n, записанное в виде десятичной строки (например, "7").
Ограничения: 1 <= n <= 10^9.
Функция
- arg1integer
- Возвращаетstring
Примеры
- Ввод
- arg1 = 15
- Вывод
- "FizzBuzz"
- Ввод
- arg1 = 7
- Вывод
- "7"
+11 скрытых тестов при отправке
Подсказки
Открывайте по одной. Каждая подсказывает чуть больше.
Оператор остатка показывает, делится ли одно число на другое:
nделится на 3 тогда и только тогда, когда остаток от деленияnна 3 равен 0.Подумай о числе 15. Оно делится на 3 и на 5. Какая из проверок должна выполниться первой, чтобы для 15 получилось
"FizzBuzz", а не"Fizz"?Сначала проверь делимость на 15, затем на 3, затем на 5. Если ни одно условие не совпало, преобразуй число в строку. Убедись, что при преобразовании записывается каждая цифра, чтобы 10^9 получилось как
"1000000000", а не в научной нотации.
Полный разбор этой задачи скоро появится.
Похожие задачи
Задачи на те же идеи. Решите две или три, и приём запомнится.
Python
def fizzBuzz(n):
# Напишите код здесьСлучай 1
Случай 2
Ввод
arg1 = 15
Ожидается
"FizzBuzz"