1
resposta

acertou = False(?)

Olá. Entendi no pedaço de código abaixo, após uma olhada no fórum, compreendi o porquê de atribuirmos o valor de False, afinal, questões semânticas. Mas não consegui entender o porquê de atribuir o valor False para "acertou". Uma ajuda por favor!

enforcou = False
acertou = False
1 resposta

Facilitaria ver o resto do seu código, mas presumo que o jogo acabe quando a pessoa acerta ou quando a pessoa se enforca, certo? Você poderia adotar qualquer valor para ambas as variáveis, dependendo de como você fez o loop. Se o seu loop está funcionando while acertou = False, você atribui o valor falso antes de começar o loop, e muda ele pra verdadeiro quando tiver que sair dele (quando a pessoa vencer o jogo). Mas o contrário também poderia acontecer. Você poderia ter uma variável continuar_jogando pra usar no seu loop, e setar ela como verdadeiro antes de começar. Ele começa continuar_jogando = True, e seu loop vai ser while continuar_jogando = True. Se a pessoa se enforcou ou venceu, você precisa que o jogo acabe, certo? Pra não ficar num loop eterno! Aí você mudaria continuar_jogando = False, e na próxima vez que ele passasse pelo while continuar_jogando =True, ele veria que é falso e sairia do loop :)

Em resumo, essa definição de verdadeiro ou falso é só pra você ter como avisar quando o seu loop deve parar de rodar, senão ele fica rodando e perguntando letras eternamente (no caso da forca). O seu "acertou = falso" é o que garante que o loop vai rodar pelo menos uma vez, já que seu loop é while acertou = False. Se você colocasse seu loop while acertou = False e definisse a variável acertou = True ANTES DE COMEÇAR, ele nem entraria no loop, pq a condição não se satisfaz. Entende?