Menu
CoddyTech

Добавляем неожиданный поворот

Часть раздела Основы путешествия по GDScript на Coddy. Урок 61 из 92.

challenge icon

Задание

Легко

Оставь всё, что ты написал на предыдущих шагах, и добавь новое правило в fizzbuzz():

Если число не делится на 3 или 7, но содержит цифру 3, верни "Almost Fizz" вместо числа. Например, 13 и 23 превращаются в Almost Fizz, а 30 по-прежнему возвращает Fizz, а 35 — Buzz.

Чтобы проверить, содержит ли строка другую строку, используй in: "3" in "13" — это true. Сначала число нужно преобразовать в строку, поэтому проверка выглядит так: "3" in str(number).

Для входных данных 14 вывод будет таким:

Welcome to FizzBuzz!
1
2
Fizz
4
5
Fizz
Buzz
8
Fizz
10
11
Fizz
Almost Fizz
Buzz

Попробуйте сами

extends Node

func _ready():
	print("Welcome to FizzBuzz!")
	var limit := int(OS.read_string_from_stdin())
	for i in range(1, limit + 1):
		print(fizzbuzz(i))

func fizzbuzz(number: int) -> String:
	var result := ""
	if number % 3 == 0:
		result += "Fizz"
	if number % 7 == 0:
		result += "Buzz"
	if result == "":
		result = str(number)
	return result

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор GDScript