请帮帮忙,我是一个Ruby的学生,我知道怎么做的.sum方法,但不是这个:你怎么定义和功能阵列,使得提供任何元素将导致它们的总和。 格式应该是数组元素的总和([阵列输入])返回总和。 用于离:总和([])应该返回0,总和([1,2,3])返回图6(#again,不[1,2,3]的.sum)。 我很卡在盒子,非常感谢你的任何帮助。
Answer 1:
与解决方案的使用可枚举#注入 :
def sum(array)
array.inject(0){|sum, el| sum + el}
end
或者,如建议,更短和更优雅的形式:
def sum(array)
array.inject(0, :+)
end
Answer 2:
使用阵列求和方法。
arr = [1,2,3]
arr.sum
def sum(arr)
arr.sum
end
Answer 3:
这将做到:
def sum(array)
array.reduce(0, :+)
end
Answer 4:
def sum(arr)
sum = 0
arr.each{|element| sum=sum+element }
return sum
end
文章来源: define sum function in Ruby