1
resposta

resolução: numero secreto

import random
import time
import os

def limpar_tela():
    os.system('cls' if os.name == 'nt' else 'clear')

def carregando(texto):
    for i in range(1, 4):
        print(f"\r {texto} {'.' * i}", end="", flush=True)
        time.sleep(0.5)
    print("\n")


def jogo():

    computador = random.randint(1,20)
    tentativas = 0
    pontos = 100

    while True:
        limpar_tela()
        print("Jogo do Número Secreto")
        print(f"Tentativas: {tentativas} | Pontos: {pontos}\n")


        try:
            jogador = int(input("Digite um numero: "))
            tentativas +=1

            carregando("Pensando")

            if jogador < computador:
                pontos -= 10
                limpar_tela()
                print("Muito baixo! Tente novamente.")
                input("\nENTER para continuar...")

            elif jogador > computador:
                pontos -= 10
                limpar_tela()
                print ("Muito alto! Tente novamente.")
                input("\nENTER para continuar...")

            else:
                print("Parabéns! Você acertou o número secreto!")
                print(f"Tentativas: {tentativas}")
                print(f" Pontuação final: {pontos}")
                input("\nPressione ENTER para continuar...")
                break



        except ValueError:
            print ("Digite apenas números!")
            input("\nPressione ENTER para continuar...")
            carregando("continuando")

def menu():
    limpar_tela()
    print("\n Bem-vindo ao jogo do número secreto! \n")

    print("1 - iniciar")
    print("0 - sair ")


def menu_opcoes():
    while True: 
       menu()
       opcao = input("Escolha uma opção: \n")

       if opcao == "1" :
           carregando("iniciando o jogo")
           jogo()

       elif opcao == "0":
            carregando("Saindo do jogo")
            print("Ate mais")  
            break
       else:
            print("Opção inválida!")
            time.sleep(1)


def main():
    menu_opcoes()

if __name__ == '__main__':
    main()
1 resposta

Olá, Lucas! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso da biblioteca random para gerar números aleatórios, utilizou muito bem o controle de fluxo com condicionais para orientar o jogador e ainda compreendeu a importância da interação com o usuário para tornar o jogo mais dinâmico.

Uma dica interessante para o futuro é adicionar um limite de tentativas para aumentar o desafio do jogo. Assim:

def jogo():
    computador = random.randint(1, 20)
    tentativas = 0
    pontos = 100
    limite_tentativas = 5

    while tentativas < limite_tentativas:
        limpar_tela()
        print("Jogo do Número Secreto")
        print(f"Tentativas: {tentativas} | Pontos: {pontos}\n")

        try:
            jogador = int(input("Digite um número: "))
            tentativas += 1

            carregando("Pensando")

            if jogador < computador:
                pontos -= 10
                print("Muito baixo! Tente novamente.")
                input("\nENTER para continuar...")

            elif jogador > computador:
                pontos -= 10
                print("Muito alto! Tente novamente.")
                input("\nENTER para continuar...")

            else:
                print("Parabéns! Você acertou o número secreto!")
                print(f"Tentativas: {tentativas}")
                print(f"Pontuação final: {pontos}")
                break

        except ValueError:
            print("Digite apenas números!")
            input("\nPressione ENTER para continuar...")
            carregando("continuando")

    if tentativas == limite_tentativas and jogador != computador:
        print("Você atingiu o limite de tentativas! O número secreto era:", computador)

Isso faz com que o jogo fique mais desafiador e incentive o jogador a pensar melhor em cada tentativa.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!