Ir para conteúdo

Ta meio bagunçado, mas...


Dery

Posts Recomendados

A alguns dias atrás perguntei qual jogo era pra mim fazer em Python para um trabalho de Programação, resolvi fazer um jogo da velha, mas meu professor, que gosta de complicar as coisas, resolveu complicar minha vida e disse que um jogo da velha normal era muito fácil (realmente é fácil), então disse para fazer um Jogo da Velha "3D" (que também é fácil, mas não tão fácil quanto o normal), o código está atualmente assim, o que acham?


 


Obs: O jogo não é gráfico, muito menos em 3D, o 3D seria tipo 3 tabuleiros, se pode bater nos 3, ou em 3 locais diferente dos 3 tabuleiros.


Obs: O jogo não está pronto.



def checarJaJogado(X):
return numeros[str(X)] == "X" or numeros[str(X)] == "O"

def printTabuleiro():
print(""" Posições:
%s | %s | %s %s | %s | %s %s | %s | %s
---|---|--- ---|----|--- ---|----|---
%s | %s | %s %s | %s | %s %s | %s | %s
---|---|--- ---|----|--- ---|----|---
%s | %s | %s %s | %s | %s %s | %s | %s """ % (numeros["1"], numeros["2"], numeros["3"], numeros["10"], numeros["11"], numeros["12"], numeros["19"], numeros["20"], numeros["21"],
numeros["4"], numeros["5"], numeros["6"], numeros["13"], numeros["14"], numeros["15"], numeros["22"], numeros["23"], numeros["24"],
numeros["7"], numeros["8"], numeros["9"], numeros["16"], numeros["17"], numeros["18"], numeros["25"], numeros["26"], numeros["27"]))

numeros = {}
for x in range(1, 28):
numeros[str(x)] = str(x)

bater = [[1,2,3],[4,5,6],[7,8,9],[1,4,7],[2,5,8],[3,6,9],[1,5,9],[3,5,7],
[10,11,12],[13,14,15],[16,17,18],[10,13,16],[11,14,17],[12,15,18],[10,14,18],[12,14,16],
[19,20,21],[22,23,24],[25,26,27],[19,22,25],[20,23,26],[21,24,27],[19,23,27],[21,23,25]]

jogadas = 0
jogador = "X"

print("""Instruções do Jogo:
O jogo da velha em três dimensões consiste em um jogo da velha com três tabuleiros, onde se pode bater nos três.
Para escolher uma jogada veja as posições no tabuleiro abaixo e informe-a quando for preciso!
Caso haja um total de 27 jogadas, automaticamente será declarado velha e ninguém irá ganhar.\n""")

novamente = True
while novamente == True:
if(jogadas == 27):
novamente = input("Deu velha, deseja jogar novamente (True / False)? ")
novamente = bool(True if novamente == "True" else False)
if(novamente == True):
for x in range(1, 28):
numeros[str(x)] = str(x)
jogadas = 0
jogador = "X"
if(novamente == True):
printTabuleiro()
jogada = input("\nInforme o local da jogada (" + jogador + "): ")
jogada = int(jogada)
if(jogada < 1 or jogada > 27):
print("Posição inválida!")
continue
if(checarJaJogado(jogada)):
print("Esta posição já foi utilizada!")
continue
numeros[str(jogada)] = jogador
jogador = "O" if jogador == "X" else "X"
jogadas += 1

Caso tenha alguma ideia/crítica para aprimorar o código, pode dizer, aceitarei de boa.


Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...