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

Qual o problema do meu código?

O número 50 é o número a ser adivinhado. Quando o usuário, por exemplo, informa 45, o programa responde corretamente que este número é menor. No entanto, o programa responde que o número é menor mesmo se o usuário digitar 50 ou 55, por exemplo. O que está acontecendo com o meu código? Eu estava tão orgulhoso dele. Me ajudem, por favor!

             #APRESENTAÇÃO
print('****************************************************************************')
print(          'Bem-vindo ao jogo de Adivinhacão!')
print("Neste programa você deve adivinhar qual foi o número que nós escolhemos")
print('****************************************************************************')
print()
print("Qual o número que você acha que nós escolhemos?")
print()

                #COMEÇO DO PROGRAMA
num_secreto = int(input("Digite um número e teche ENTER: "))    #Os dados numéricos coletados do usuário, por padrão
print()                                                         #Python,são sempre uma STR. Daí a necessidade de se
                                                                #converter essa coleta para INT. Isso evita erros.
#criação das variáveis para as condições
estiver_errado = num_secreto != 50
chute_menor    = num_secreto  < 50
chute_maior    = num_secreto  > 50

while (estiver_errado):
    print(num_secreto, "não é o nosso número secreto!", end="\n")                        # END permite a inserção de
    input("Tecle ENTER para te darmos uma dica")                                         # uma STR antes da barra e o
    print()                                                                              #N depois da barra  quebra 
                                                                                         # a linha.

    if (chute_menor):
        print(num_secreto, "é menor que o nosso número")
        print()
    elif (chute_maior):
        print(num_secreto, "é maior que o nosso número")
        print()
    num_secreto = int(input("Por favor, digite outro número e tecle ENTER: "))
    print()

print()
print("***********************")
print("PARABÉNS! Você acertou!")
print("***********************")
input("Tecle ENTER para sair")
2 respostas
solução!
Removido a pedido do usuario.

Show de resposta! A resposta só faltou dizer que a condição do while, para este caso, não pode ser em forma de variável. A condição tem que está explícita. Ou seja, "num_secreto != 50" ao invés de criar a variável "estiver_errado = num_secreto != 50"