-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathjogo_nim.py
More file actions
109 lines (93 loc) · 3.64 KB
/
Copy pathjogo_nim.py
File metadata and controls
109 lines (93 loc) · 3.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
def computador_escolhe_jogada(n, m):
if n <= m:
return n
else:
if n % (m+1) > 0:
return n % (m+1)
return m
def usuario_escolhe_jogada(n, m):
valor = int(input("\nQuantas peças você vai tirar? "))
while valor > m or valor <= 0 or valor > n:
print("Oops! Jogada inválida! Tente de novo.")
valor = int(input("\nQuantas peças você vai tirar? "))
return valor
def partida():
n = int(input("Quantas peças? "))
m = int(input("Limite de peças por jogada? "))
while m < 1:
print("A quantidade de peças por jogadas devem ser menor ou igual as peças totais")
m = int(input("Limite de peças por jogada? "))
valor = 0
jogada = 0
if (n % (m+1)) == 0:
print("\nVocê começa!")
jogada = 1 #Vez do usuario
while n > 0:
if jogada == 1:
valor = usuario_escolhe_jogada(n, m)
print("\nVocê tirou", valor, "peça(s).")
n = n - valor
print("Agora restam", n, "peças no tabuleiro.")
jogada = 2
else:
valor = computador_escolhe_jogada(n, m)
print("\nO computador tirou", valor, "peça(s)")
n = n - valor
print("Agora restam", n, "peças no tabuleiro.")
jogada = 1
if jogada == 1:
print("Fim do jogo! O computador ganhou!\n")
return 2 #Ponto para o computador
else:
print("Fim do jogo! O você ganhou!\n")
return 1 #Ponto para o usuario
else:
print("\nComputador começa!")
jogada = 2 #Vez do computador
while n > 0:
if jogada == 2:
valor = computador_escolhe_jogada(n, m)
print("\nO computador tirou", valor, "peça(s)")
n = n - valor
print("Agora restam", n, "peças no tabuleiro.")
jogada = 1
else:
valor = usuario_escolhe_jogada(n, m)
print("\nVocê tirou", valor, "peça(s).")
n = n - valor
print("Agora restam", n, "peças no tabuleiro.")
jogada = 2
if jogada == 1:
print("Fim do jogo! O computador ganhou!\n")
return 2 #Ponto para o computador
else:
print("Fim do jogo! O você ganhou!\n")
return 1 #Ponto para o usuario
def campeonato():
quantidade_partida = 1
placar_computador = placar_usuario = 0
while quantidade_partida < 4:
print("**** Rodada", quantidade_partida ,"****\n")
if partida() == 1:
placar_usuario = placar_usuario + 1
else:
placar_computador = placar_computador + 1
quantidade_partida = quantidade_partida + 1
print("**** Final do campeonato! ****\n")
print("Placar: Você", placar_usuario, "X", placar_computador, "Computador")
def main():
print("Bem-vindo ao jogo do NIM!")
print("1 - para jogar uma partida isolada")
print("2 - para jogar um campeonato")
escolha = int(input("Escolha: "))
while escolha != 1 and escolha != 2:
print("Escolha uma opção válida!")
escolha = int(input("Escolha: "))
if escolha == 1:
print("\nVocê escolheu uma partida isolada!\n")
partida()
else:
if escolha == 2:
print("\nVocê escolheu um campeonato!\n")
campeonato()
main()