Skip to content

Commit 99d769d

Browse files
authored
Update FizzBuzz
Update to 1) add guard, 2) use .isMultiple(of:), 3) use switch statement
1 parent 2c47dc3 commit 99d769d

File tree

1 file changed

+17
-15
lines changed

1 file changed

+17
-15
lines changed

Fizz Buzz/FizzBuzz.swift

+17-15
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,21 @@
1-
func fizzBuzz(_ numberOfTurns: Int) {
2-
for i in 1...numberOfTurns {
3-
var result = ""
1+
// Updated for Xcode Version 11.4.1 (11E503a)
42

5-
if i % 3 == 0 {
6-
result += "Fizz"
3+
func fizzBuzz2(_ numberOfTurns: Int) {
4+
guard numberOfTurns >= 1 else {
5+
print("Number of turns must be >= 1")
6+
return
77
}
8-
9-
if i % 5 == 0 {
10-
result += (result.isEmpty ? "" : " ") + "Buzz"
11-
}
12-
13-
if result.isEmpty {
14-
result += "\(i)"
8+
9+
for i in 1...numberOfTurns {
10+
switch (i.isMultiple(of: 3), i.isMultiple(of: 5)) {
11+
case (false, false):
12+
print("\(i)")
13+
case (true, false):
14+
print("Fizz")
15+
case (false, true):
16+
print("Buzz")
17+
case (true, true):
18+
print("Fizz Buzz")
19+
}
1520
}
16-
17-
print(result)
18-
}
1921
}

0 commit comments

Comments
 (0)