我想寫一個Rubyish解決方案來解決Project Euler中的問題6,因爲我傾向於用其他語言編寫C語言。然而,這段代碼:語法錯誤,期待「=」
sqrsum, sumsqr = 0, 0
(1..100).each { |x| sqrsum, sumsqr += x, x**2 }
p (sumsqr - (sqrsum ** 2))
踢了這些錯誤:
/Users/Andy/Documents/Programming/Ruby/ProjectEuler/P6.rb:2: syntax error, unexpected tOP_ASGN, expecting '='
(1..100).each { |x| sqrsum, sumsqr += x, x**2 }
^
/Users/Andy/Documents/Programming/Ruby/ProjectEuler/P6.rb:2: syntax error, unexpected tPOW, expecting '='
(1..100).each { |x| sqrsum, sumsqr += x, x**2 }
^
我在做什麼錯在這裏?我只允許以該句法結構進行分配嗎?
對不起,我還是不明白爲什麼我的版本(您的答案中的第二個代碼片段)無效。 – Andy 2010-07-11 02:05:32
=可以做多項分配,+ =不能 – 2010-07-11 02:08:36
@尼爾,謝謝。 – Andy 2010-07-11 02:42:26