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

Enter your FizzBuzz solution here!

I dont know

What am I doing wrong here? The code works in Swift playground. But it will not be approved here ...

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

1 Answer

Jennifer Nordell
Jennifer Nordell
Treehouse Staff

Hi there! These challenges are very specific and because of the way that they are graded may have some unusual requirements. It seems that you missed the bottom line of the instructions:

The challenge also does not need you to loop over a range of values (using for or while). I'll take care of that.

Including a loop in your code will cause the challenge to fail. Instead of sending in a number and checking every value in that range for the output, it's going to send in several numbers one at a time, and check that the output was correct.

Hope this helps! :sparkles:

edited for additional information

Also, don't forget that a return statement will cause a function to exit. Because you are always starting with 1 here, and it does not fulfill any of the if or else if, it will return 1 and then stop. :smiley:

Thank you! Now it worked :)