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 trialPaul Oh
763 PointsI am trying to return 2 double values by entering a string in a function.
What needs to be in the return portion of the code to receive 2 double values as the output?
// Enter your code below
func getTowerCoordinates (location: String) -> (lat: Double, lon: Double) {
switch location {
case "Eiffel Tower": (48.8582, 2.2945)
case "Great Pyramid": (29.9792, 31.1344)
case "Sydney Opera House": (33.8587, 151.2140)
default: (0,0)
}
return (lat, lon)
}
1 Answer
Christin Lepson
24,269 PointsYou were very close. First thing, you need to delete the space between the getTowerCoordinate function name and the (location: String). Second, you need to delete the names lat and lon. The way you wrote it is actually good, but for some reason the question doesn't want us to name the return values in this function. Lastly, you put 'return' in the wrong spots. Since we want to return the double values as a tuple, we put the return keyword in front of the tuples in our switch. The code should look like this:
func getTowerCoordinates(location: String) -> (Double, Double) {
switch location {
case "Eiffel Tower": return (48.8582, 2.2945)
case "Great Pyramid": return (29.9792, 31.1344)
case "Sydney Opera House": return (33.8587, 151.2140)
default: return (0,0)
}
}
Paul Oh
763 PointsPaul Oh
763 PointsThank you Christian! your explanations were really great!