1
resposta

Não calculando a pontuação

Olá, Meu código não está calculando a quantidade de pontos perdidos durante as tentativas, e não consigo entender o porquê. Será que poderiam me ajudar?

import random

print("************************************************")
print("Olá ! bem vindo novamente ao jogo de adivinhação")
print("************************************************")

numero_secreto = random.randrange(1,101)
tentativas = 0
rodada = 1
pontos = 1000

print("Qual nível de dificuldade?")
print("(1) Fácil (2) Médio (3) Difícil")

nivel = int(input("Define o nível: "))
if (nivel == 1):
    tentativas = 20
elif(nivel == 2):
    tentativas = 10
else:
    tentativas = 5

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

    if (chute < 1 or chute > 100):
        print("ERROU ! tem que ser entre 1 e 100")
        continue

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

    if(acertou):
        print("Você acertou e fez {} pontos!".format(pontos))
        break

    else:
     if(maior):
        print("Você errou ! O seu chute foi maior do que o número secreto")
     if(menor):
        print("Você errou ! O seu chute foi menor do que o número secreto")

    pontos_perdidos = abs(numero_secreto - chute)
    pontos = pontos - pontos_perdidos

print("Fim do jogo")

1 resposta

Olá Caroline, O seu jogo está calculando os pontos sim, mas eles só são exibidos quando o jogador acerta.

Isso ocorre porque o único lugar onde eles são impressos é no conjunto de linhas:

    if(acertou):
        print("Você acertou e fez {} pontos!".format(pontos))
        break

Em nenhum outro momento a pontuação é exibida ao usuário, logo se ele perder ele não sabe quantos pontos fez, e eu acho que esse é o objetivo do jogo.

Segue um output de uma das minhas tentativas:

************************************************
Olá ! bem vindo novamente ao jogo de adivinhação
************************************************
Qual nível de dificuldade?
(1) Fácil (2) Médio (3) Difícil
Define o nível: 2
Tentativa 1 de 10
Digite o seu numero:  50
Você digitou  50
Você errou ! O seu chute foi maior do que o número secreto
Tentativa 2 de 10
Digite o seu numero:  25
Você digitou  25
Você errou ! O seu chute foi maior do que o número secreto
Tentativa 3 de 10
Digite o seu numero:  12
Você digitou  12
Você errou ! O seu chute foi menor do que o número secreto
Tentativa 4 de 10
Digite o seu numero:  18
Você digitou  18
Você errou ! O seu chute foi menor do que o número secreto
Tentativa 5 de 10
Digite o seu numero:  20
Você digitou  20
Você acertou e fez 955 pontos!
Fim do jogo

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