Desenvolva um jogo em que o usuário tenha que adivinhar uma palavra que será mostrada com as letras embaralhadas. O programa terá uma lista de palavras lidas de um arquivo
Passo 1
Primeiro, vamos entender o que o exercício está pedindo. Precisamos criar um jogo simples onde o usuário tenta adivinhar uma palavra que será mostrada com as letras embaralhadas. Para isso, vamos precisar trabalhar com leitura de arquivos, manipulação de strings e interação com o usuário. Vamos usar a linguagem de programação Python para implementar isso.
Passo 2
Vamos começar preparando a lista de palavras que o jogo usará. Essas palavras estarão armazenadas em um arquivo de texto, por exemplo,
palavras.txt
. Cada palavra deve estar em uma linha diferente dentro desse arquivo. Precisamos ler esse arquivo e carregar as palavras em uma lista no nosso programa. Para isso, usamos a função open
para abrir o arquivo e readlines
para ler todas as linhas.Passo 3
Depois de carregar as palavras, precisamos escolher uma palavra aleatoriamente para que o usuário adivinhe. Para selecionar uma palavra de forma aleatória, vamos usar a biblioteca
random
do Python, que tem a função choice
exatamente para isso.Passo 4
Com a palavra escolhida, nosso próximo passo é embaralhar suas letras para criar o desafio. Vamos transformar a palavra em uma lista de caracteres, utilizar a função
shuffle
da biblioteca random
para embaralhar as letras e, em seguida, juntar essas letras novamente em uma string.Passo 5
Agora que temos a palavra embaralhada, vamos mostrar essa palavra para o usuário e pedir que ele tente adivinhar qual é a palavra original. Vamos usar a função
input
para receber a resposta do usuário.Passo 6
Por fim, precisamos verificar se a tentativa do usuário está correta. Vamos comparar a resposta dele com a palavra original que selecionamos. Se estiver correta, mostramos uma mensagem de sucesso. Caso contrário, informamos que ele errou e mostramos a palavra correta.
Resposta
Aqui está um exemplo de como implementar esse jogo em Python:
import random
def ler_palavras(arquivo):
try:
with open(arquivo, 'r') as f:
palavras = f.read().splitlines()
return palavras
except FileNotFoundError:
print(f"Erro: O arquivo {arquivo} não foi encontrado.")
return []
def embaralhar_palavra(palavra):
palavra_lista = list(palavra)
random.shuffle(palavra_lista)
return ''.join(palavra_lista)
def jogo_adivinhacao(arquivo='palavras.txt'):
palavras = ler_palavras(arquivo)
if not palavras:
return
palavra_selecionada = random.choice(palavras)
palavra_embaralhada = embaralhar_palavra(palavra_selecionada)
print("Adivinhe a palavra: ", palavra_embaralhada)
tentativa = input("Sua resposta: ")
if tentativa.lower() == palavra_selecionada.lower():
print("Parabéns! Você acertou!")
else:
print(f"Que pena! A palavra correta era '{palavra_selecionada}'.")
if __name__ == "__main__":
jogo_adivinhacao()
Explicação do Código:
-
Importação da Biblioteca
random
:- Necessária para selecionar uma palavra aleatoriamente e embaralhar as letras.
-
Função
ler_palavras
:- Abre o arquivo especificado e lê todas as linhas, retornando uma lista de palavras.
- Trata o caso onde o arquivo não é encontrado, evitando que o programa quebre.
-
Função
embaralhar_palavra
:- Converte a palavra em uma lista de caracteres.
- Usa
random.shuffle
para embaralhar os caracteres. - Junta os caracteres de volta em uma string.
-
Função
jogo_adivinhacao
:- Carrega as palavras do arquivo.
- Seleciona uma palavra aleatoriamente.
- Embaralha a palavra selecionada.
- Exibe a palavra embaralhada e solicita a tentativa do usuário.
- Verifica se a tentativa está correta e exibe a mensagem correspondente.
-
Bloco Principal:
- Verifica se o script está sendo executado diretamente e, em caso positivo, inicia o jogo.
Como Usar:
- Crie um arquivo chamado
palavras.txt
no mesmo diretório do seu script Python. - Adicione algumas palavras, cada uma em uma linha. Por exemplo:
python desenvolvimento computador algoritmo
- Execute o script Python. O jogo mostrará uma palavra embaralhada e pedirá para você adivinhar.
Exemplo de Execução:
Adivinhe a palavra: tpyhon
Sua resposta: python
Parabéns! Você acertou!
Esse código cria um jogo simples e interativo que atende ao enunciado proposto. Você pode expandir o jogo adicionando mais funcionalidades, como várias tentativas, pontuação ou escolhendo palavras de diferentes categorias.