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

Condições if dentro ou fora do wi

Primeiramente, eu havia colocado as variáveis booleanas fora do while, porém quando executo desta forma...o programa roda nas 3 tentativas o mesmo número que eu digitei pela primeira vez

print('Bem vindo ao jogo da adivinhação!')

numero_secreto = 42
total_tentativas = 3
chute = int(input('Digite o seu número: '))
maior = chute > numero_secreto
menor = chute < numero_secreto

while(total_tentativas > 0):

    print('Tentativa: ', total_tentativas)

    if (maior):
        print('Você chutou para cima')
    elif (menor):
        print('Você chutou para baixo')
    else:
        print('Você acertou o número')
    total_tentativas = total_tentativas - 1

print('Fim do jogo!')

Posteriormente, eu coloquei as variáveis booleanas dentro do while e o programa rodou corretamente, conforme foi feito no vídeo.

print('Bem vindo ao jogo da adivinhação!')

numero_secreto = 42
total_tentativas = 3


while(total_tentativas > 0):
    chute = int(input('Digite o seu número: '))
    maior = chute > numero_secreto
    menor = chute < numero_secreto
    print('Tentativa: ', total_tentativas)

    if (maior):
        print('Você chutou para cima')
    elif (menor):
        print('Você chutou para baixo')
    else:
        print('Você acertou o número')
    total_tentativas = total_tentativas - 1

print('Fim do jogo!')

Alguém sabe o motivo para o primeiro código não ter rodado corretamente?

Abraço a todos!

2 respostas
solução!

Olá Pedro,

vc não está inserindo um novo número a cada loop.

Deveria ter um input dentro do while. =)

Claro...não tinha me dado conta disto Luciano. Obrigado pela resposta!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software