2011-12-26 123 views
2

平方和有反正我可以计算出数组计算红宝石

a=[1,2,3,4] sum of square = 1+4+9+16

请我我试图找到一种方式来做到这一点的物体的平方的总和。

+8

你有没有尝试任何事情* *询问这里之前? – Gareth

回答

5
a.map{|x| x**2}.inject(0, &:+) 
+6

你甚至不需要'inject'中的“0”或'&';一个简单的'reduce(:+)'将起作用。 – d11wtq

+0

谢谢,这是完美的。 –

+1

或只是'a.inject {| sum,item | sum + item * item}' –

0
a = [1,2,3,4] 
p a.sum{|n| n*n} # => 30