You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Función que me retorna la misma matriz pero con todos los caracteres en minúscula
def lower(matriz):
matriz_lower = [] # Matriz total toda en minúscula
for i in matriz:
mini_matriz = [] # Filas de la matriz
for j in i:
letter = j.lower()
mini_matriz.append(letter)
matriz_lower.append(mini_matriz)
return matriz_lower
Esta función es necesario pasar la lista con sus caracteres en minúscula
def verificacion(lista, aceptados=permitidos):
# Inicializamos los dos jugadores en Falso para dar inicio
ganador_x = False
ganador_o = False
for i in lista:
if i in aceptados:
if lista == ["x", "x", "x"]:
ganador_x = True
if lista == ["o", "o", "o"]:
ganador_o = True
return ganador_x, ganador_o
def verificar_caracteres_validos(matriz, permitidos=permitidos):
# Verifica que todos los caracteres de la matriz sean permitidos
for fila in matriz:
for elem in fila:
if elem not in permitidos:
return False
return True
def triki(matriz):
matrix = lower(matriz)
# Verificar si la matriz contiene caracteres no válidos
if not verificar_caracteres_validos(matrix):
return print("Nulo: La matriz contiene caracteres no válidos")
# Ciclo para confirmar si hay ganadores en las filas
for i in matrix:
ganador_fila_x, ganador_fila_o = verificacion(i)
if ganador_fila_o or ganador_fila_x:
break
columna = []
# Con este ciclo volvemos las filas columnas, para pasar a verificar
for i in range(len(matrix)):
mini_matriz = []
for j in range(len(matriz)):
y = matrix[j][i]
mini_matriz.append(y)
columna.append(mini_matriz)
# Verificación si hay ganador con las columnas
for i in columna:
ganador_col_x, ganador_col_o = verificacion(i)
if ganador_col_o or ganador_col_x:
break
diagonal = []
# Con este ciclo evaluamos la diagonal principal
for i in range(len(matrix)):
y = matrix[i][i]
diagonal.append(y)
ganador_diagonal_x, ganador_diagonal_o = verificacion(diagonal)
antidiagonal = []
# Con este ciclo evaluamos la diagonal principal
for i in range(len(matrix)):
y = matrix[i][-i - 1]
antidiagonal.append(y)
ganador_antidiagonal_x, ganador_antidiagonal_o = verificacion(antidiagonal)
ganador_x = (
ganador_fila_x or ganador_col_x or ganador_diagonal_x or ganador_antidiagonal_x
)
ganador_o = (
ganador_fila_o or ganador_col_o or ganador_diagonal_o or ganador_antidiagonal_o
)
if ganador_x:
return print("Las X ganan")
if ganador_o:
return print("Las O ganan")
if ganador_o and ganador_x:
print("La matriz es incorrecta")
triki(matriz)
`
The text was updated successfully, but these errors were encountered:
`matriz = [
["x", "o", "x"],
["x", "o", "o"],
["x", "x", "O"],
]
permitidos = ["x", "o", " "]
Función que me retorna la misma matriz pero con todos los caracteres en minúscula
def lower(matriz):
Esta función es necesario pasar la lista con sus caracteres en minúscula
def verificacion(lista, aceptados=permitidos):
# Inicializamos los dos jugadores en Falso para dar inicio
ganador_x = False
ganador_o = False
def verificar_caracteres_validos(matriz, permitidos=permitidos):
# Verifica que todos los caracteres de la matriz sean permitidos
for fila in matriz:
for elem in fila:
if elem not in permitidos:
return False
return True
def triki(matriz):
matrix = lower(matriz)
triki(matriz)
`
The text was updated successfully, but these errors were encountered: