added main, should work

master
Adam 3 years ago
parent b94b69ac2b
commit 88ec7439bb

@ -1,41 +1,66 @@
board = [[" ", " ", " "],[" ", " ", " "],[" ", " ", " "]]
board = [[" ", " ", " "], [" ", " ", " "], [" ", " ", " "]]
player_marks = ["x", "y"]
def print_board(board):
print(f""" 1 2 3
def print_board():
print(f""" 1 2 3
1 |{board[0][0]}|{board[0][1]}|{board[0][2]}|
2 |{board[1][0]}|{board[1][1]}|{board[1][2]}|
3 |{board[2][0]}|{board[2][1]}|{board[2][2]}|
""")
def player(x_or_y):
player_move = input("Zvol si radu a sloupec ")
while length(player_move) != 3:
print("spatny pocet znaku")
else:
try:
if board[int(player_move[0]) - 1][int(player_move[2]) - 1] == " ":
board[int(player_move[0]) - 1][int(player_move[2]) - 1] = x_or_y
else:
print("Moznost nelze vybrat")
player_move = input("Zvol si radu a sloupec ")
except:
print("Moznost nelze vybrat")
player_move = input("Zvol si radu a sloupec ")
player_move = input("Zvol si radu a sloupec ")
while 3 != len(player_move):
print("spatny pocet znaku")
player_move = input("Zvol si radu a sloupec ")
else:
try:
if board[int(player_move[0]) - 1][int(player_move[2]) - 1] == " ":
board[int(player_move[0]) - 1][int(player_move[2]) - 1] = x_or_y
else:
print("Moznost nelze vybrat")
player_move = input("Zvol si radu a sloupec ")
except:
print("Moznost nelze vybrat")
player_move = input("Zvol si radu a sloupec ")
def check_win():
for i in range(3): #Kontrola sloupcu
if board[i][0] in player_marks and board[i][1] in player_marks and board[i][2] in player_marks:
print(f"Vyhral hrac {board[i][0]}")
return False
for i in range(3): # Kontrola rad
if board[0][i] in player_marks and board[1][i] in player_marks and board[2][i] in player_marks:
print(f"Vyhral hrac {board[0][i]}")
return False
if
for i in range(3): # Kontrola sloupcu
if board[i][0] in player_marks and board[i][1] in player_marks and board[i][2] in player_marks:
print(f"Vyhral hrac {board[i][0]}")
return False
for i in range(3): # Kontrola rad
if board[0][i] in player_marks and board[1][i] in player_marks and board[2][i] in player_marks:
print(f"Vyhral hrac {board[0][i]}")
return False
if board[0][0] in player_marks and board[1][1] in player_marks and board[2][
2] in player_marks: # Kontrola diagonaly
print(f"Vyhral hrac {board[0][i]}") # z prava do leva
return False
elif board[0][2] in player_marks and board[1][1] in player_marks and board[2][
0] in player_marks: # Kontrola diagonaly
print(f"Vyhral hrac {board[0][i]}") # z leva do prava
return False
return True
x_or_y = "x"
player(x_or_y)
print_board(board)
check_win()
rounds = 0
def main(rounds):
while rounds < 9:
if rounds % 2 == 0:
x_or_y = "x"
else:
x_or_y = "o"
print_board()
player(x_or_y)
rounds += 1
if not check_win():
break
main(rounds)
Loading…
Cancel
Save