def da_boas_vindas
puts
puts " P /_\ P "
puts " /_\_|_|_/_\ "
puts " n_n | ||. .|| | n_n Bem vindo ao "
puts " |_|_|nnnn nnnn|_|_| Jogo de Adivinhação!"
puts " |' ' | |_| |' ' | "
puts " |_____| ' _ ' |_____| "
puts " \__|_|__/ "
puts
puts "Qual o seu nome?"
nome = gets.strip
puts "\n\n\n"
puts "Iremos iniciar o jogo para você, #{nome}"
nome
end
def pede_dificuldade
puts "Qual o nível de dificuldade?"
puts "(1) Muito fácil (2) Fácil (3) Normal (4) Difícil (5) Impossível"
puts "Escolha: "
dificuldade = gets.to_i
puts "\n\n"
end
def sorteia_numero_secreto dificuldade
case dificuldade
when 1
maximo = 30
when 2
maximo = 60
when 3
maximo = 100
when 4
maximo = 150
else
maximo = 200
end
puts "Escolhendo um número secreto entre 1 e #{maximo}..."
sorteado = rand(maximo) + 1
puts "Escolhido... que tal tentar acertar em 5 tentativas?"
sorteado
end
def pede_um_numero chutes, contador, limite_de_tentativas
puts "\n\n\n"
puts "TENTATIVA #{contador} DE #{limite_de_tentativas}"
puts
puts "Chutes ate agora: #{chutes}"
puts "Entre com o numero"
chute = gets.strip
puts "\n\n"
puts "você chutou #{chute}"
chute.to_i
end
def verifica_se_acertou numero_secreto, chute
acertou = numero_secreto == chute
if acertou
ganhou
return true
end
maior = numero_secreto > chute
if maior
puts "O número secreto é maior."
else
puts "O número secreto é menor."
end
false
end
def ganhou
puts
puts " OOOOOOOOOOO "
puts " OOOOOOOOOOOOOOOOOOO "
puts " OOOOOO OOOOOOOOO OOOOOO "
puts " OOOOOO OOOOO OOOOOO "
puts " OOOOOOOO # OOOOO # OOOOOOOO "
puts " OOOOOOOOOO OOOOOOO OOOOOOOOOO "
puts "OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO "
puts "OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO "
puts "OOOO OOOOOOOOOOOOOOOOOOOOOOOOO OOOO "
puts " OOOO OOOOOOOOOOOOOOOOOOOOOOO OOOO "
puts " OOOO OOOOOOOOOOOOOOOOOOOO OOOO "
puts " OOOOO OOOOOOOOOOOOOOO OOOO "
puts " OOOOOO OOOOOOOOO OOOOOO "
puts " OOOOOO OOOOOO "
puts " OOOOOOOOOOOO "
puts
puts " Acertou! "
puts
end
def joga nome, dificuldade
numero_secreto = sorteia_numero_secreto dificuldade
limite_de_tentativas = 5
chutes = []
pontos_ate_agora = 1000
for contador in 1..limite_de_tentativas
chute = pede_um_numero chutes, contador, limite_de_tentativas
chutes << chute
if nome == "Thiago"
ganhou
break
end
pontos_a_perder = (chute - numero_secreto).abs / 2.0
pontos_ate_agora -= pontos_a_perder
if verifica_se_acertou numero_secreto, chute
break
end
end
puts "você ganhou #{pontos_ate_agora} pontos."
end
def nao_quer_jogar?
puts "Deseja jogar novamente? (S/N)"
quero_jogar = gets.strip
nao_quero_jogar = quero_jogar.upcase == "N"
end
nome = da_boas_vindas
dificuldade = pede_dificuldade
loop do
joga nome, dificuldade
break if nao_quer_jogar?
end
Quando eu executo o código e na parte de escolher o nível de dificuldade,
seleciono 1 (facil)
E o que aparece é "Escolhendo um número secreto entre 1 e 200..."
deveria aparecer "Escolhendo um número secreto entre 1 e 30"
não sei aonde estou errado, já revisei o código algumas vezes e não acho o motivo.