У меня вопрос по задачке: Lesson4.task1 ```/** * ...
# russian-kotlinasfirst
a
У меня вопрос по задачке: Lesson4.task1
Copy code
/**
 * Средняя
 *
 * Найти скалярное произведение двух векторов равной размерности,
 * представленные в виде списков a и b. Скалярное произведение считать по формуле:
 * C = a1b1 + a2b2 + ... + aNbN. Произведение пустых векторов считать равным 0.
 */
Написал так:
Copy code
un times(a: List<Int>, b: List<Int>): Int
{
    var C = 0
    for (i in 0 until a.size) C += a[i] * b[i]
    return C
}
Все хорошо работает, но хочу переписать короткую запись. Пишу так:
Copy code
= a.zip(b).reduce(0.00) {total , next (a , b) -> total +a*b }
Не работает. Есть кто решил эту задачку красиво в одну строчку? Подскажите пожалуйста.
m
Для начала посмотрите, в чем разница между
reduce
и
fold
Потом почитайте про то, какой синтаксис правильный при destructuring declaration параметра у лямбды И должно заработать 😃
a
Спасибо, разобрался