Jump to content

Eli Almeida

Membros
  • Contagem de Conteúdo

    2
  • Ingressou

  • Última visita

Informações Pessoais

  • Cidade
    Feira de santana
  • Estado
    Bahia (BA)

Conquistas de Eli Almeida

1

Reputação na Comunidade

  1. O código que fiz para a questão: import os tabela= [ [ " "," "," "], [ " "," "," "], [ " ", " "," "] ] def mostrarVelha (): global tabela print() for linha in range(3): for coluna in range (3): if tabela[linha][coluna] != "x" and tabela[linha][coluna] != "o": tabela[linha][coluna] = " " print (" 0 1 2 \n ") for linha in range(3): for coluna in range(3): print("", tabela[linha][coluna], end = "") if coluna < 2: print(" |", end = "") if coluna == 2: print(" ", linha) if linha < 2 : print("") print (" ------------") print() def jogar (simbolo,linha,coluna): global tabela mudou = False if linha == 0: for i in range(3): if i == coluna: if tabela[linha][coluna] != "x" and tabela[linha][coluna] != "o": tabela[linha][coluna] = simbolo mudou = True if linha == 1: for i in range(3): if i == coluna: if tabela[linha][coluna] != "x" and tabela[linha][coluna] != "o": tabela[linha][coluna] = simbolo mudou = True if linha == 2: for i in range(3): if i == coluna: if tabela[linha][coluna] != "x" and tabela[linha][coluna] != "o": tabela[linha][coluna] = simbolo mudou = True return mudou def trocarJogador (): global simbolo global jogador if simbolo == "x": simbolo = "o" else: simbolo = "x" if jogador == 1: jogador = 2 else: jogador = 1 def jogoTerminou (): global jogador global tabela espacosDisponiveis = 0 terminou = False #Linhas for linha in range(3): if tabela[linha][0] == tabela[linha][1] == tabela[linha][2] == "o": terminou = True if tabela[linha][0] == tabela[linha][1] == tabela[linha][2] == "x": terminou = True #colunas for coluna in range(3): if tabela[0][coluna] == tabela[1][coluna] == tabela[2][coluna] == "o": terminou = True if tabela[0][coluna] == tabela[1][coluna] == tabela[2][coluna] == "x": terminou = True #Diagonal if tabela[0][0] == "o" and tabela[1][1]=="o" and tabela[2][2] == "o" or tabela[0][2] == "o" and tabela[1][1]== "o" and tabela[2][0] =="o": terminou = True if tabela[0][0] == "x" and tabela[1][1]=="x" and tabela[2][2] == "x" or tabela[0][2] == "x" and tabela[1][1]== "x" and tabela[2][0] =="x": terminou = True # Empate for linha in range(3): for coluna in range(3): if tabela[linha][coluna] != "x" and tabela[linha][coluna]!= "o": espacosDisponiveis = espacosDisponiveis+1 if espacosDisponiveis == 0: terminou = True print("\n"*2) print("Empate") jogador = 0 return terminou def reiniciarVelha(): global tabela global simboloInicial global simbolo global jogador jogador = 1 for linha in range(3): for coluna in range (3): tabela[linha][coluna] = "" mostrarVelha () if simboloInicial == "x": simbolo = "o" simboloInicial = simbolo else: if simboloInicial == "o": simbolo = "x" simboloInicial = simbolo jogador = 1 simbolo = "x" simboloInicial = simbolo # A variável simboloInicial armazena uma cópia de "x" que começa o jogo. # Ela vai ser trocada por "o" dentro da função reiniciarVelha, caso o usuário decida continuar jogando #, após terminar uma partida. E assim por diante. resposta = True resultado = False mostrarVelha() while resposta: while not jogoTerminou(): resultado = False while not resultado: try : print("\n") print("Jogador",jogador,": informe a linha que gostaria de jogar", simbolo) linha = int(input()) print("Jogador",jogador,": informe a coluna que gostaria de jogar", simbolo) coluna = int(input()) os.system('cls' if os.name == 'nt' else 'clear') resultado = jogar(simbolo, linha,coluna) if not resultado: print("Jogada inválida") mostrarVelha() except ValueError : os.system('cls' if os.name == 'nt' else 'clear') print(" Digite um número válido ") mostrarVelha() trocarJogador() print ("\n"*1) print("Jogo finalizado") if jogador >= 1 and jogador <= 2: if jogador == 2 : jogador= jogador-1 print("jogador", jogador, "ganhou") else: jogador = jogador+1 print("jogador", jogador, "ganhou") pergunta = "" while pergunta !="N" and pergunta !="S": print("Gostaria de continuar jogando?[S/N]") pergunta = str(input("")).upper().strip()[0] if pergunta == "N": resposta = False elif pergunta == "S": os.system('cls' if os.name == 'nt' else 'clear') reiniciarVelha() else: print ("Digite [S],ou [N]")
×
×
  • Create New...