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

Meu if não funciona

Alguém consegue identificar porque o "if (chute < 1 or chute > 100):" não aparece, por favor?

numero_secreto = 42
tentativas = 3

for rodada in range(1, tentativas + 1):
    print("Tentativa {} de {} ".format(rodada, tentativas))
    chute_str = input("Digite o seu numero: ")
    print("Voce digitou  o numero: ", chute_str)
    chute = int(chute_str)

    if (chute < 1 or chute > 100):
        print("Você deve digitar um número entre 1 e 100!")
        continue

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

    if (acertou):
        print("Voce acertou!")
        break
    else:
        if (maior):
        print("Voce errou! O seu chute foi maior que o numero secreto")
    elif (menor):
        print("Voce errou! O seu chute foi menor que o numero secreto")

print("Fim de jogo")

Tentativa 1 de 3

Digite o seu numero: 899

Voce digitou o numero: 899

Voce errou! O seu chute foi maior que o numero secreto

Tentativa 2 de 3

3 respostas
solução!

Bom dia, tudo bem? Tem um probleminha de indentação no seu código:

No trecho a seguir, vc escreveu assim:

 if (acertou):
        print("Voce acertou!")
        break
    else:
        if (maior):
        print("Voce errou! O seu chute foi maior que o numero secreto")
    elif (menor):
        print("Voce errou! O seu chute foi menor que o numero secreto")

Precisa alterar para ficar assim, com os espaçamentos da indentação corretos:

 if (acertou):
        print("Voce acertou!")
        break
    else:
        if (maior):
            print("Voce errou! O seu chute foi maior que o numero secreto")
        elif (menor):
            print("Voce errou! O seu chute foi menor que o numero secreto")

Agora deve funcionar. ;-)

Funcionou!! Muito obrigada!!

Isso mesmo, o print tem de ser identado em relação ao if.