Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

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

what is wrong?

?

fizzBuzz.swift
func fizzBuzz(n: Int) -> String {
    for n in 1...100 {
        if (n % 3 == 0) && (n & 5 == 0) {
            print("FizzBuzz")
        } else if (n % 3 == 0) {
            print("Fizz")
        } else if (n % 5 == 0) {
            print("Buzz")
        } else {
            print("\(n)")
        }
    }
    return "\(n)"
}

1 Answer

Jason Anders
MOD
Jason Anders
Treehouse Moderator 145,858 Points

Hey Mohammed,

There are actually a few things going wrong here. Mostly it looks like you are not following the Very Specific instructions for this challenge.

  1. "The challenge ... does not need you to loop over a range of values ..." But you have created a for in loop. So, that needs to be deleted.
  2. "Change all you print statements to return statements" But you still have print statements. So, those need to be changed.
  3. "Do not worry about the default case ..."* But you have included an else clause. So, that needs to be deleted.

Once those are correct, there is also a typo in your if statement, you have (n & 5) instead of (n % 5).

So, the code is 'technically' correct (less the typo), but it need to exactly match what the instructions ask for, otherwise the code checker cannot check it. So, once you fix it all up, the challenge will pass.

Keep coding! :) :dizzy: