Ruby 无法访问if-else语句中的方法

Ruby 无法访问if-else语句中的方法,ruby,Ruby,我目前正在制作一个猜字游戏。有一个单词,用户会猜出单词中的一个字符。如果用户猜测的字符实际上在单词中,则会给出反馈。例如,单词是cookie,用户输入o,则反馈将是 _欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧_ 在本例中,尝试次数等于单词长度6。如果用户猜测的字符不是单词的一部分,例如z,则会显示一条错误消息。然而,我在访问if和else语句时遇到问题,它们只对第一次输入有效。这是我的密码: 班级游戏 属性读取器:w

我目前正在制作一个猜字游戏。有一个单词,用户会猜出单词中的一个字符。如果用户猜测的字符实际上在单词中,则会给出反馈。例如,单词是cookie,用户输入o,则反馈将是

_欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧欧_

在本例中,尝试次数等于单词长度6。如果用户猜测的字符不是单词的一部分,例如z,则会显示一条错误消息。然而,我在访问if和else语句时遇到问题,它们只对第一次输入有效。这是我的密码:

班级游戏 属性读取器:word 属性访问器:猜测计数,:猜测,:用户输入,:猜测数组 def初始化沃德 @单词 @猜测= 终止 def尝试 @尝试=@word.length 终止 def猜测用户输入 @用户输入=用户输入 @猜0 请输入一个你认为在密语中的字母 letter=get.chomp 猜谜信
猜测问题在于,在编写以下代码时,您总是抓住猜测数组中的第一个元素:

guess = guesses[0]
所以这个表情!秘密包括什么?猜测是:

当第一个猜测是正确的,然后是正确的时,总是正确的 当第一个答案不正确时始终为false 要解决这个问题,你可能需要抓住最后的猜测;即

guess = guesses.last 

# `.last` is convenience method for accessing last element of an array; like so
#
#     guess = guesses[-1]
或者您的if声明的当前信函:即

if !secret_word.include? letter
  # [...]
elsif secret_word.include? letter
  # [...]