Skip to content

Commit 9efe393

Browse files
author
DSA Data Ops
committed
Update Curso Version 3
1 parent bd9376c commit 9efe393

9 files changed

+1899
-0
lines changed

Cap05/Lab03/forca_v1.py

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
# Hangman Game (Jogo da Forca)
2+
# Programação Orientada a Objetos
3+
4+
# Import
5+
import random
6+
7+
# Board (tabuleiro)
8+
board = ['''
9+
10+
>>>>>>>>>>Hangman<<<<<<<<<<
11+
12+
+---+
13+
| |
14+
|
15+
|
16+
|
17+
|
18+
=========''', '''
19+
20+
+---+
21+
| |
22+
O |
23+
|
24+
|
25+
|
26+
=========''', '''
27+
28+
+---+
29+
| |
30+
O |
31+
| |
32+
|
33+
|
34+
=========''', '''
35+
36+
+---+
37+
| |
38+
O |
39+
/| |
40+
|
41+
|
42+
=========''', '''
43+
44+
+---+
45+
| |
46+
O |
47+
/|\ |
48+
|
49+
|
50+
=========''', '''
51+
52+
+---+
53+
| |
54+
O |
55+
/|\ |
56+
/ |
57+
|
58+
=========''', '''
59+
60+
+---+
61+
| |
62+
O |
63+
/|\ |
64+
/ \ |
65+
|
66+
=========''']
67+
68+
69+
# Classe
70+
class Hangman:
71+
72+
# Método Construtor
73+
def __init__(self, word):
74+
75+
76+
# Método para adivinhar a letra
77+
def guess(self, letter):
78+
79+
80+
# Método para verificar se o jogo terminou
81+
def hangman_over(self):
82+
83+
84+
# Método para verificar se o jogador venceu
85+
def hangman_won(self):
86+
87+
88+
# Método para não mostrar a letra no board
89+
def hide_word(self):
90+
91+
92+
# Método para checar o status do game e imprimir o board na tela
93+
def print_game_status(self):
94+
95+
96+
# Função para ler uma palavra de forma aleatória do banco de palavras
97+
def rand_word():
98+
with open("palavras.txt", "rt") as f:
99+
bank = f.readlines()
100+
return bank[random.randint(0,len(bank))].strip()
101+
102+
103+
# Função Main - Execução do Programa
104+
def main():
105+
106+
# Objeto
107+
game = Hangman(rand_word())
108+
109+
# Enquanto o jogo não tiver terminado, print do status, solicita uma letra e faz a leitura do caracter
110+
111+
112+
# Verifica o status do jogo
113+
game.print_game_status()
114+
115+
# De acordo com o status, imprime mensagem na tela para o usuário
116+
if game.hangman_won():
117+
print ('\nParabéns! Você venceu!!')
118+
else:
119+
print ('\nGame over! Você perdeu.')
120+
print ('A palavra era ' + game.word)
121+
122+
print ('\nFoi bom jogar com você! Agora vá estudar!\n')
123+
124+
# Executa o programa
125+
if __name__ == "__main__":
126+
main()
127+

Cap05/Lab03/palavras.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
bola
2+
casa
3+
massa

0 commit comments

Comments
 (0)