Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Break não funcionando

Quando acerta o número o programa continua mesmo tendo acertado...

numero_secreto = 43 total_tentativas = 3

for rodada in range(1, total_tentativas + 1): print("Tentativa {} de {}".format(rodada, total_tentativas)) usuario = int(input("Digite o seu número: ")) print("Você digitou", usuario)

maior = usuario > numero_secreto
menor = usuario < numero_secreto
acertou = usuario == numero_secreto

if acertou:
    print("Você acertou!")
    break
else:
    if maior:
        print("Você errou! O seu chute foi maior!")
    elif menor:
        print("Você errou! O seu chute foi menor!")

print("Game Over")

1 resposta
solução!

Olá,

O código ficou errado na pergunta, mas pelo que entendi o seu break está dentro da função IF, ele só funciona se estiver dentro de uma função de laço (while, for).

Em python as identações são importantes, nesse caso o seu if precisa estar deslocado para a direita para que o if fique dentro do for e o break funcione, seria algo como abaixo:

numero_secreto = 43 
total_tentativas = 3

for rodada in range(1, total_tentativas + 1): 
    print("Tentativa {} de {}".format(rodada, total_tentativas))
    usuario = int(input("Digite o seu número: "))
    print("Você digitou", usuario)

    maior = usuario > numero_secreto
    menor = usuario < numero_secreto
    acertou = usuario == numero_secreto

    if acertou:
        print("Você acertou!")
        break
    else:
        if maior:
            print("Você errou! O seu chute foi maior!")
        elif menor:
            print("Você errou! O seu chute foi menor!")

Abs