-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathex068.py
More file actions
48 lines (38 loc) · 1.26 KB
/
ex068.py
File metadata and controls
48 lines (38 loc) · 1.26 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
# Faça um programa que jogue par ou ímpar;
# O jogo será interrompido quando o
# jogador perder. Mostre o número de
# vitórias consecutivas do jogador.
from random import randint
from time import sleep
# retorna TRUE se quer par.
def getParidadeFromUser():
inval = ''
while not inval in ['P', 'I', 'S']:
inval = input('Você quer par ímpar ou sair? [P/I/S]\n>>>\t').strip().upper()
if inval == 'S':
raise Exception('Você desistiu!?')
return (inval == 'P')
print('Vamos jogar par ou ímpar?')
userGanhou = True
victoryCtr = 0
while userGanhou:
try:
paridade = getParidadeFromUser()
mao = int(input('Digite o valor de sua mão:\n>>>\t'))
paridadeStr = "par" if paridade else "ímpar"
# 1..10 tem número igual de pares e ímpares
maoComputador = randint(1,11)
# Se pediu par (true) e é divisível (false) ou vice-versa
userGanhou = ((maoComputador + mao) % 2 == 1) != paridade
victoryCtr += 1 if userGanhou else 0
sleep(1)
print('---------------------')
sleep(1)
print(f'Você jogou {mao} e pediu {paridadeStr}. Eu joguei {maoComputador}.')
sleep(1)
print('Logo, {}'.format("você ganhou." if userGanhou else "eu ganhei"))
except Exception as e:
print(e)
break
print(f'Foram {victoryCtr} vitórias seguidas.')
print('Até mais!')