Кто-то может помочь расшифровать решение?

помогите расшифровать данную функцию понятным языком, понимаю что рекурсия, понимаю что идет сложение всех чисел, но не совсем понимаю на пальцах, будьте любезны, помогите пожалуйста

func caclulateDigitsSum(_ n: Int) -> Int {
    if (n < 10 ){
        return n
    }else {
        return (n % 10) + caclulateDigitsSum(_ : (n/10))
    }
}
caclulateDigitsSum(1234)
caclulateDigitsSum(1111)

Ответы (1 шт):

Автор решения: Shamus Rezol

Функция складывает все цифры в числе. Ее псевдокод:

func caclulateDigitsSum(_ n: Int) -> Int {
    if (в числе n только одна цифра - истина){
        возвращаем эту цифру
    }
    else {
        return (последняя цифра числа n) + caclulateDigitsSum(_ : (число n без последней цифры))
    }
}
→ Ссылка