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

Michael Flowers
Michael Flowers
iOS Development with Swift Techdegree Graduate 10,917 Points

changing print to return makes the code not work.

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

this code works without the return, but when the return replaces the print statement, it does not work. Any help on the solution would be greatly appreciated.

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

1 Answer

KRIS NIKOLAISEN
KRIS NIKOLAISEN
54,333 Points

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

Remove the loop.