Ruby 为什么计数器总是被重置?

Ruby 为什么计数器总是被重置?,ruby,Ruby,我创建了一个简单的游戏,用户必须按字母顺序排列单词的顺序才能得分。出于某些奇怪的原因,即使用户答对了2个问题,分数仍返回1。我做错了什么 def alphabetize(word) word.chars.sort_by(&:downcase).join end def words %w(hello yes) end @correct = 0 @incorrect = 0 def score (@correct / @correct + @incorrect)

我创建了一个简单的游戏,用户必须按字母顺序排列单词的顺序才能得分。出于某些奇怪的原因,即使用户答对了2个问题,分数仍返回1。我做错了什么

def alphabetize(word)
    word.chars.sort_by(&:downcase).join
end

def words
    %w(hello yes)
end

@correct = 0
@incorrect = 0

def score
    (@correct / @correct + @incorrect)
end

words.each do |word|
    puts "Alphabetize '#{word}'"
    answer = gets.chomp
    if answer == alphabetize(word)
        @correct += 1
        p 'Nice!'
    else
        @incorrect += 1
        p 'You suck!'
    end
end

p "Your score: #{score}"
因为:

@correct / @correct 

永远是我的傻瓜!我把括号放错地方了。小心整数除法。1/2 = 0