변형 요소 추가하기
Coddy Swift 여정의 기초 섹션에 포함된 레슨 — 86개 중 61번째.
챌린지
쉬움이전 레슨에서는 고정된 제수인 3과 5를 사용하여 1부터 주어진 제한값까지 FizzBuzz를 실행하는 루프를 만들었습니다. 이제 제수를 사용자 정의할 수 있도록 만들어 변화를 주어 봅시다!
사용자 정의 제수를 위한 두 개의 추가 매개변수를 받도록 fizzBuzz 함수를 수정하세요:
- 함수 시그니처를 다음과 같이 업데이트합니다:
fizzBuzz(_ number: Int, fizzAt: Int = 3, buzzAt: Int = 5) -> String - "Fizz" 확인을 위해 3 대신
fizzAt을 사용합니다 - "Buzz" 확인을 위해 5 대신
buzzAt을 사용합니다 - 기본값은 제수가 지정되지 않았을 때 클래식 FizzBuzz가 여전히 작동하도록 보장합니다
다음 입력을 받게 됩니다:
- 상한값 (정수)
- "Fizz"를 위한 첫 번째 제수 (정수)
- "Buzz"를 위한 두 번째 제수 (정수)
각 숫자에 대해 이러한 사용자 정의 제수를 함수에 전달하도록 루프를 업데이트하세요.
예를 들어, 입력값이 10, 2, 3인 경우 출력은 다음과 같아야 합니다:
1
Fizz
Buzz
Fizz
5
FizzBuzz
7
Fizz
Buzz
Fizz이 예제에서 "Fizz"는 2의 배수에 대해 출력되고, "Buzz"는 3의 배수에 대해, "FizzBuzz"는 둘 다의 배수(예: 6)에 대해 출력됩니다.
입력값이 15, 3, 5(클래식 제수)인 경우 출력은 원래의 FizzBuzz와 일치해야 합니다:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz직접 해보기
func fizzBuzz(_ number: Int) -> String {
if number % 3 == 0 && number % 5 == 0 {
return "FizzBuzz"
} else if number % 3 == 0 {
return "Fizz"
} else if number % 5 == 0 {
return "Buzz"
} else {
return String(number)
}
}
// Read input
let limit = Int(readLine()!)!
// Loop from 1 to limit and print the result for each number
for number in 1...limit {
print(fizzBuzz(number))
}