3
respostas

Código funcionando diferente da aula.

Ao importar o código do curso para este capítulo e rodando no Python não sei se é erro de código ou da minha máquina, mas ao colocar o comando print(numero_secreto) conforme a aula, ele não gera saída. Além desta questão, ao digitar um número ele não dá a mensagem se é maior, menor ou se acertei, somente quando termina de digitar as 3 tentativas.

insira seu código aqui

import random

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

numero_secreto = random.randrange(1,101) total_de_tentativas = 3 print (numero_secreto)

for rodada in range(1, total_de_tentativas + 1): print("Tentativa {} de {}".format(rodada, total_de_tentativas))

chute_str = input("Digite um número entre 1 e 100: ")
print("Você digitou " , 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 = 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 do que o número secreto.")
    elif(menor):
        print("Você errou! O seu chute foi menor do que o número secreto.")

print("Fim do jogo")

3 respostas
Removido a pedido do usuario.

Estou usando o PyCharm 2019.3.4, um outro problema que notei é que qualquer comando que coloco antes do For o Pycharm não reconhece, ele vai direto para o for.

Olá tudo bem contigo? copiei o código que vc enviou em minha ide,

encontrei problemas na indentação dele, lembrando do zen code do Python ela é muito importante.

Abaixo lhe envio o código corrigido, recomendo que você não o copei usa apenas de guia.

import random

numero_secreto = random.randrange(1,101)
total_de_tentativas = 3
print (numero_secreto)

for rodada in range(1, total_de_tentativas + 1):
    print("Tentativa {} de {}".format(rodada, total_de_tentativas))

    chute_str = input("Digite um número entre 1 e 100: ")
    print("Você digitou " , 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 = 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 do que o número secreto.")
        elif(menor):
            print("Você errou! O seu chute foi menor do que o número secreto.")

print("Fim do jogo")

Se te ajudei marque como a dúvida como resolvida.

Att

Roni Serra