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 2.0 Collections and Control Flow Control Flow With Conditional Statements FizzBuzz

Julien Schmitt
Julien Schmitt
2,334 Points

What should I return ?

I'm not getting what I'm not returning correctly as it is telling me.

func fizzBuzz(n: Int) -> String {

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

Can I get a hand on this one ?

Thanks

Julien

fizzBuzz.swift
func fizzBuzz(n: Int) -> String {

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

2 Answers

You don't need the loop, as the challenge said it would provide it (behind the scenes). You also don't want to print anything. Otherwise, it looks good, and you have the logic of it correctly:

func fizzBuzz(n: Int) -> String {

    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)"
    }
}