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 2.0 Functions Functions in Swift 2.0 Recap: Functions

Aditya Gawade
Aditya Gawade
1,182 Points

how to proceed? what is wrong ? what logic am i missing?

Let's add some code to the body of the function. Get rid of the existing return statement that's in there and in this task we're going to write out code to take a Celcius temperature value passed in and convert it to Fahrenheit.

To convert from Celcius to Fahrenheit - multiply the value by 9, divide the resulting value by 5 and then add 32.

Once you have the Fahrenheit value, return it from the function.

functions.swift
// Enter your code below
func temperatureInFahrenheit( temperature: Double ) -> Double {
temperature = (((temperature*9)/5)+32)
return temperature
}

1 Answer

David Lin
David Lin
35,864 Points

Almost! You don't need to re-assign temperature. Simply return the result directly:

// Enter your code below
func temperatureInFahrenheit(temperature: Double) -> Double {
  return (temperature * 9 / 5) + 32
}

Technically, your solution would work just as well, although a bit longer than it has to be. But I've noticed Treehouse's solution algorithm isn't actually based on the Swfit compiler or unit tests, such that it rejects solutions which would actually work. Rather, it seems like it's just pattern matching for the expected answer.