Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Olá, gostaria de saber qual o erro em meu código, pois ao digitar 175 a resposta é false, ao invés de true.

puts "Bem vindo ao jogo da adivinhação"
puts "Qual é o seu nome?"
nome = gets

puts
puts
puts
puts
puts
puts
puts "Começaremos um jogo para você," + nome

puts "Escolhendo um número secreto entre 0 e 200..."
numero_secreto = 175
puts "Escolhido... que tal adivinhar hoje o nosso número secreto?"

puts
puts
puts
puts
puts "Tentativa 1"
puts "Entre com o número"
chute = gets
puts "Será que acertou? Você chutou" + chute
puts chute.to_i == numero_secreto
3 respostas
solução!

Oi Patrick, tudo bem? Testei seu código e funcionou corretamente. Talvez o problema seja algo do caractere de retorno que está sendo inserido quando você tecla enter.

Tenta limpar a entrada do gets com o método chomp por exemplo.

chute = gets.chomp

Acho que esse problema é visto no curso, mas o método usado para limpar a entrada é o método split se não me engano. Testa pra mim?

Olá Wanderson, orbigado pela resposta. Consegui resolver o problema invertendo a seguinte linha:

puts chute.to_i == numero_secreto

para:

puts numero_secreto == chute.to_i

Uia, não imaginei que isso pudesse dar um problema. Sério que foi só inverter isso? De certa forma, faz sentido.