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

Melhoria da lógica

Coloquei algumas linhas a mais de código que melhoram a usabilidade do jogo, olhem só....

def jogar():
    print("*************************")
    print("******Jogo da forca******")
    print("*************************")



    palavra_secreta = "carambola".upper()
    letras_acertadas = ["_" for letra in palavra_secreta]

    enforcou = False
    acertou = False
    erros = len(palavra_secreta)

    print(letras_acertadas)


    while(not acertou and not enforcou):
        chute = input("Qual a letra ? ")
        chute = chute.strip().upper()

        if(chute in palavra_secreta):
            index = 0
            for letra in palavra_secreta:
                if(letra == chute):
                    letras_acertadas[index] = letra
                index +=1
        else:
            erros -= 1

   enforcou = erros == 0
        acertou = "_" not in letras_acertadas
        print(letras_acertadas)
        print("Você tem mais {} tentativas".format(erros - 1))

    if(acertou):
        print("Você ganhou !!")
    else:
        print("Você perdeu !!")
    print("Fim de jogo !!!!!")


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

Coloquei alguns detalhes como a diminuição das tentativas utilizando :

erros -= 1

E também comparando o valor a 0:

enforcou = erros == 0

Para usar qualquer palavra de forma dinâmica no código e utilizar a variável erro para identificar a quantidade de tentativas, é interessante inserir o trecho:

erros = len(palavra_secreta)

Poucas melhorias, mas já fazem uma diferença legal na utilização do código :D

4 respostas

Oi Hugo tudo bem?

Legal as modificações. E obrigado por compartilhar. Continue assim e bons estudos!!!

Oi Hugo, beleza?

Bom que tenha conseguido modificar seu código e continuou funcionando. É sempre bom compartilhar seus estudos com a comunidade :)

solução!

Valeu galera :D

Disponha e bons estudos!!!