Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Jogo da Forca em Python

Descrição

Este projeto consiste na implementação de um jogo da forca desenvolvido em Python utilizando conceitos fundamentais de programação.

O jogador deve adivinhar uma palavra secreta letra por letra, possuindo um número limitado de tentativas. O sistema informa acertos, erros e exibe o progresso da palavra até que o jogador vença ou perca a partida.

Funcionalidades

  • Seleção aleatória de palavras.
  • Controle de tentativas restantes.
  • Verificação de letras já utilizadas.
  • Exibição do progresso da palavra.
  • Condições de vitória e derrota.
  • Interface textual executada pelo terminal.

Tecnologias Utilizadas

  • Python 3

Estruturas de Dados Utilizadas

  • Listas: armazenamento e manipulação das letras da palavra.
  • Conjuntos (set): controle de letras já utilizadas pelo jogador, evitando duplicidades.
  • Strings: representação da palavra secreta e das entradas do usuário.

Como Executar

  1. Abra o terminal na pasta do projeto.
  2. Execute o comando:
python forca.py

Exemplo de Execução

========================================
JOGO DA FORCA
========================================

Palavra: _ _ _ _ _

Digite uma letra: a

Você acertou!

Palavra: A _ _ _ A

Tentativas restantes: 5

Conceitos Aplicados

  • Estruturas condicionais (if, elif, else)
  • Estruturas de repetição (while)
  • Funções
  • Modularização
  • Manipulação de listas e conjuntos
  • Entrada e saída de dados
  • Validação de dados do usuário

🎓 Lições Aprendidas

Ao longo da construção deste projeto, aprimorei habilidades cruciais em lógica de programação e criação de aplicações:

  • Tratamento de dados: adquiri a capacidade de gerenciar entradas incorretas, assegurando que o jogador interaja de forma adequada com a dinâmica do jogo.
  • Gerenciamento de progresso: criei um sistema para rastrear tentativas, letras reveladas, falhas e o andamento geral da partida.
  • Implementação de Set: apliquei estruturas de dados para impedir que letras repetidas fossem inseridas pelo jogador.
  • Estruturação do código: dividi a lógica do jogo em funções menores e autônomas, simplificando a manutenção e a leitura do código.
  • Pensamento analítico(computacional): exercitei a habilidade de dividir um desafio complexo em partes menores, traduzindo as regras do jogo em um código funcional.

Autor(a)

PinchiSZ

Licença

Projeto de uso educacional e livre para estudos.

##English version below

Hangman Game in Python

Description

This project is a simple implementation of the classic Hangman game developed in Python.

The player must guess a secret word one letter at a time while managing a limited number of attempts. The game provides feedback on correct and incorrect guesses and displays the player's progress until the game is won or lost.

Features

  • Random word selection
  • Limited number of attempts
  • Detection of repeated letters
  • Dynamic display of the hidden word
  • Win and loss conditions
  • Text-based terminal interface

Technologies Used

  • Python 3

Data Structures

  • Lists: used to manipulate and display the secret word.
  • Sets: used to store guessed letters and prevent duplicates.
  • Strings: used for user input and word representation.

How to Run

  1. Open a terminal in the project directory.
  2. Run the following command:
python forca.py

Example Output

========================================
HANGMAN GAME
========================================

Word: _ _ _ _ _

Enter a letter: a

Correct guess!

Word: A _ _ _ A

Remaining attempts: 5

Concepts Applied

  • Conditional statements (if, elif, else)
  • Loops (while)
  • Functions
  • Code modularisation
  • List and set manipulation
  • User input validation
  • Interactive terminal applications

Learning Objectives

This project was developed to practise fundamental programming concepts, including:

  • Algorithmic thinking
  • Data structures
  • Control flow
  • Function design
  • User interaction
  • Problem-solving

🎓 What I Learned

Throughout this project, I strengthened important programming logic and software development skills:

  • Input validation: learned how to handle invalid inputs and ensure that users interact correctly with the game.
  • State management: developed logic to track attempts, discovered letters, mistakes, and overall game progress.
  • Using Set: applied data structures to prevent duplicate letters from being entered by the player.
  • Modularization: organized the game logic into smaller, independent functions, making the code easier to understand and maintain.
  • Problem-solving: practiced breaking down a problem into smaller steps and translating game rules into a functional implementation.

Author

PinchiSZ

Licence

This project is intended for educational purposes and personal study.

About

Academic Python project demonstrating algorithmic thinking, modularisation, and interactive gameplay.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages