我正在使用Java几个月,现在正在转换回Ruby。我从以下代码中得到一个奇怪的错误:
def count_divisors
divisor_hash = {}
25.times do |i|
divisor_hash[i] = find_dividends(i)
end
puts divisor_hash
end
def find_dividends(i)
count = 0
1000.times do |k|
if i % ( k + 1 ) == 0
count++
end
end
count
end
count_divisors()
此代码生成以下错误:
test.rb:14: syntax error, unexpected keyword_end
test.rb:19: syntax error, unexpected end-of-input, expecting keyword_end
删除if
语句时不会发生此错误。我不知道为什么。我知道每个if
语句都需要end
语句,但由于某种原因,它似乎因放置end
语句而感到不安。
答案 0 :(得分:3)
将count++
更改为count += 1
Ruby不支持增量运算符。