Agora vamos até a linha adequada, ignorando diversas delas:
arquivo = File.new("dicionario", "r")
total_de_palavras = arquivo.gets.to_i
aleatoria = rand(total_de_palavras)
for i = 1..aleatoria
arquivo.gets
end
Esta fomra acima explicada notexto nao funcionou, por que ? Entretanto esta forma abaixo sim:
def sorteia_palavra_secreta
avisa_escolhendo_palavra()
arquivo = File.new("dicionario.txt", "r")
total_de_palavras = arquivo.gets.to_i
aleatoria = rand(total_de_palavras)
for i in 1..aleatoria
arquivo.gets
end
palavra_secreta = arquivo.gets.strip.downcase
arquivo.close
#todas_as_palavras = arquivo.split "\n"
#numero_escolhido = rand(todas_as_palavras.size)
#palavra_secreta = todas_as_palavras[numero_escolhido]
avisa_palavra_escolhida(palavra_secreta)
end
E por que percorrer um for para pegar o ultimo dado de gets ? que será minha palavra, por que nao posso apontar como palavra_secreta = arquivo[aleatoria] ?