2
respostas

Minha resposta

Eu fiz diferente quando o jogador ganhar ou perder, primeiro eu não fiz a lógica mostrada em aula, eu simplesmente disse que quando palavra_secreta for igual a letras_acertadas o status de acertou muda para True, o mesmo para enforcou, quando ele errar 6 vezes muda o status para True. E coloquei o número de tentativas que o jogador tem.

def jogar():
    print("************************************")
    print("***Bem vindo ao jogo de forca!!!!***")
    print("************************************")
    palavra_secreta = "banana".upper()
    letras_acertadas = ['_', '_', '_', '_', '_', '_']
    letras_faltando = str(letras_acertadas.count('_'))
    print('Ainda faltam acertar {} letras'.format(letras_faltando))

    enforcou = False
    acertou = False
    erros = 0

    print(letras_acertadas)

    while(not enforcou and not acertou):

        chute = input("Qual a letra ? ")
        chute = chute.strip().upper() #tirar o espaços e colocar em maíscula

        if (chute in palavra_secreta):
            index = 0
            for letra in palavra_secreta:
                if (chute.upper() == letra.upper()): # colocar o chute maísculo junto com a letra para comparar
                    letras_acertadas [index] = letra
                index = index+1
            letras_faltando = str(letras_acertadas.count('_'))
            print('Ainda faltam acertar {} letras'.format(letras_faltando))
        else:
            erros=erros+1
            print("Continue tentando, você tem {} tentativas ".format(6-erros))
            if erros==6:
                enforcou=True
                print("Tente de novo, não foi dessa vez")
            elif palavra_secreta == letras_acertadas:
                acertou=True
                print("Muito bem, você acertou a palavra secreta !!!")


        print(letras_acertadas)



    print("Fim de jogo")

if (__name__== "__main__"):
    jogar()
2 respostas

Olá, Filipe! Tudo bem?

Mandou bem! Parabéns!

Ficou com alguma dúvida durante a prática? Caso tenha ficado estamos por aqui.

Bons estudos e até mais!

Achei interessante inserir um if(erros!=6) para evitar aparecer a mensagem "Você errou!! Faltam 0 tentativas""

        else:
            erros += 1
            if(erros != 6):
                print("Você errou!! Faltam {} tentativas".format(6-erros))