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 Functions and Optionals Parameters and Tuples Tuples

Ramsey Shafi
PLUS
Ramsey Shafi
Courses Plus Student 5,240 Points

I don't understand what is wrong with this

This code looks perfectly fine but when I click check work it keeps telling me: Your function needs to return a tuple with elements named 'greeting' and 'language'.

tuples.swift
func greeting(person: String) -> (String, String) {
    let language = "English"
    let greeting = "Hello \(person)"
    let greet = (language, greeting)
    return greet
}

1 Answer

You are close. You need to add both greeting and language as type String after the -> in the function definition, then return greeting and function. There is no need to create another constant within the function. The answer for part 1 of the challenge should read:

func greeting(person: String) -> (greeting: String, language: String) {
    let language = "English"
    let greeting = "Hello \(person)"

    return (greeting, language)
}