Swift БАЗА
June 18, 2022

Простая функция. Подсчитать сумму массива.

Задача подсчитать сумму значений в массиве.

func calculateMoney(_ wallet: [Int]) { 
    var sum = 0
    for value in wallet {
        sum += value
    }
    print("sum = \(sum)")
}
let wallet = [100, 5, 1, 5, 5, 20, 50, 100, 1, 1]
calculateMoney(wallet)

Упростим данный код:

    var sum = 0
    for value in wallet {
        sum += value
    }

через метод .reduce :

    var sum = wallet.reduce(0,+)

func calculateMoney(_ wallet:[Int]) {
    var sum = wallet.reduce(0,+)
    print("sum = \(sum)")
}
let wallet = [100, 5, 1, 5, 5, 20, 50, 100, 1, 1]
calculateMoney(wallet)
wallet - это внутренний параметр, а _ внешний. Можно так же его назвать, как ( howMuch ), тогда при вызове функции:
func calculateMoney(howMuch wallet:[Int]) { 
    var sum = wallet.reduce(0,+)
    print("sum = \(sum)")
}
let wallet = [100, 5, 1, 5, 5, 20, 50, 100, 1, 1]
calculateMoney(howMuch: wallet)