@jerrold_langworth Если заданный массив чисел, то сложить все элементы массива в Ruby можно вызвав .sum посмотрите небольшой пример как это работает:
1 2 3 |
array = [1, 2, 3, 4] print(array.sum) |
@jerrold_langworth
Можно использовать метод reduce (или inject - это синонимы) для сложения элементов массива. Например, чтобы сложить все элементы между собой:
1 2 3 |
arr = [1, 2, 3, 4, 5] result = arr.reduce(:+) puts result #=> 15 |
А можно и передать в reduce блок, который будет принимать два аргумента: аккумулятор и текущий элемент массива. В блоке нужно выполнить операцию, которую вы хотите применить к элементу массива и аккумулятору, и вернуть результат, который будет использован как новое значение аккумулятора:
1 2 3 |
arr = [1, 2, 3, 4, 5] result = arr.reduce(0) { |acc, item| acc + item } puts result #=> 15 |
В каждой итерации acc - это результат предыдущей итерации (0 в первом случае), а item - текущий элемент массива.