Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

iOS Swift Collections and Control Flow Control Flow With Conditional Statements FizzBuzz Challenge

CJ Doyle
CJ Doyle
1,530 Points

So I did this problem on Xcode before putting in the system in treehouse and it worked. Why not here?

for i in 1..100 { if (i % 3 == 0) && (i % 5 == 0) { print("FizzBuzz") } else if (i % 3 == 0) { print("Fizz") } else if (i % 5 == 0) { print("Buzz") } else { print(i) } }

fizzBuzz.swift
func fizzBuzz(n: Int) -> String {
  // Enter your code between the two comment markers
  for i in 1..100 {
    if (i % 3 == 0) && (i % 5 == 0) {
      print("FizzBuzz")
    } else if (i % 3 == 0) {
      print("Fizz")
    } else if (i % 5 == 0) {
      print("Buzz")
    } else {
      print(i)
    }
  }
  // End code
  return "\(n)"
}

4 Answers

There are a few things in the instructions that weren't followed.

1) Change your variable/constant name that you are checking in each step to n

2) Change all your print statements to return statements

3) Do not worry about the default case

4) The challenge also does not need you to loop over a range of values

CJ Doyle
CJ Doyle
1,530 Points

Yeah before I copied I had changed over the variables to n, changed the statements to return and didn't do a default case and it still didn't work..didnt realize I still had the one before.

So it works now? Here is your code updated that passed for me:

func fizzBuzz(n: Int) -> String {
  // Enter your code between the two comment markers

    if (n % 3 == 0) && (n % 5 == 0) {
      return("FizzBuzz")
    } else if (n % 3 == 0) {
      return("Fizz")
    } else if (n % 5 == 0) {
      return("Buzz")
    } 

  // End code
  return "\(n)"
}
CJ Doyle
CJ Doyle
1,530 Points

I ended up doing a switch statement instead one more time and it passed actually. But thank you so much for the help with the if statement... I See where I where I went wrong this time.