2
respostas

Código não determina o fim das tentativas

Oi boa tarde tudo bem ? Sou iniciante na programação e estou com probleminhas com o meu código. Se puderem ajudar agradeço muito, segue o mesmo:

print("**********************************")
print("Bem vindos ao jogo de Adivinhação!")
print("**********************************")

numero_secreto = 77
total_de_tentativas = 3
rodada = 1

while (rodada <= total_de_tentativas ):
print("Tentativa:", rodada, "de", total_de_tentativas)
chute_str = input("Digite o seu número:")
print("você digitou", chute_str)
chute = int(chute_str)

acertou = chute == numero_secreto
maior = chute > numero_secreto
menor = chute < numero_secreto

if (acertou):
print("Você acertou!!!")
else:
if(maior):
    print("Você errou! O seu chute foi maior que o número secreto.")
elif(menor):
    print("Você errou! O seu chute foi menor que o número secreto.")

rodada = rodada - 1
print("Fim de Jogo!")
2 respostas

Olá, Boa noite! Observe que nesse if você deve adicionar um break, para que quando o usuário acerte o número você "quebre" o laço while após exibir a mensagem.

    if (acertou):
        print("Você acertou!!!")
        break
    

Nessa última parte do código você também cometeu uma pequena confusão com o "rodada = rodada -1", que deveria ser "rodada = rodada + 1" (você pode usar "rodada += 1"que vai dar no mesmo).

rodada = rodada + 1
print("Fim de Jogo!")

Ficando assim:

if (acertou):
    print("Você acertou!!!")
    break
else:
    if(maior):
        print("Você errou! O seu chute foi maior que o número secreto.")
    elif(menor):
        print("Você errou! O seu chute foi menor que o número secreto.")

rodada += 1
print("Fim de Jogo!")

Opa tranquilo pior que o código não funcionou kkkk. Se puder me ajudar dnv agradeço. O erro que vem acontecendo é esse

line 21 break ^^^^^ SyntaxError: 'break' outside loop

print("**********************************")
print("Bem vindos ao jogo de Adivinhação!")
print("**********************************")

numero_secreto = 77
total_de_tentativas = 3
rodada = 1

while (rodada <= total_de_tentativas ):
print("Tentativa:", rodada, "de", total_de_tentativas)
chute_str = input("Digite o seu número:")
print("você digitou", chute_str)
chute = int(chute_str)

acertou = chute == numero_secreto
maior = chute > numero_secreto
menor = chute < numero_secreto

if (acertou):
    print("Você acertou!!!")
    break
else:
    if(maior):
        print("Você errou! O seu chute foi maior que o número secreto.")
elif(menor):
        print("Você errou! O seu chute foi menor que o número secreto.")

rodada += 1
print("Fim de Jogo!")