diff --git a/__pycache__/tablero.cpython-313.pyc b/__pycache__/tablero.cpython-313.pyc new file mode 100644 index 0000000..958389e Binary files /dev/null and b/__pycache__/tablero.cpython-313.pyc differ diff --git a/tablero.py b/tablero.py new file mode 100644 index 0000000..37f76d6 --- /dev/null +++ b/tablero.py @@ -0,0 +1,7 @@ +def crear_tablero(): + return [[" " for _ in range(3)] for _ in range(3)] + +def mostrar_tablero(tablero): + for fila in tablero: + print(" | ".join(fila)) + print("-" * 9) \ No newline at end of file diff --git a/tateti_1.3.py b/tateti_1.3.py new file mode 100644 index 0000000..89f3627 --- /dev/null +++ b/tateti_1.3.py @@ -0,0 +1,103 @@ +''' +Juego TA-TE-TI + Profesora = ANA LAURA ALMADA + Alumnos de UNL Virtual - Grupo Venus + Federico Alejandro Mazzei: + Estructura inicial del programa (tablero inicial del juego, ingreso de posiciones validas y contador de jugadas) + Fernando Zaldívar Posse: + Validación de ganador de la partida. Empate si se completan las 9 posiciones sin un ganador. + Matías Mauricio Machado Pérez: + Menú principal con opciones antes de que muestre el tablero de juego. + Sara Somaré: + Incorporación del segundo jugador y turnos de juego integrándolo al código de Ingrid. + Ingrid Celia Spessotti: + Representación del tablero con una lista, actualización del tablero y control de casillas ocupadas +''' + +def comprueba_ganador(): + """ Comprueba si hay un ganador """ + return (tablero[0] == tablero[1] == tablero[2] or + tablero[3] == tablero[4] == tablero[5] or + tablero[6] == tablero[7] == tablero[8] or + tablero[0] == tablero[3] == tablero[6] or + tablero[1] == tablero[4] == tablero[7] or + tablero[2] == tablero[5] == tablero[8] or + tablero[0] == tablero[4] == tablero[8] or + tablero[2] == tablero[4] == tablero[6]) + +def imprime_tablero(): + print(f"\n {tablero[0]} | {tablero[1]} | {tablero[2]} \n---+---+---\n {tablero[3]} | {tablero[4]} | {tablero[5]} \n---+---+---\n {tablero[6]} | {tablero[7]} | {tablero[8]} ") + + + +print("=== BIENVENIDO AL TA-TE-TI ===") +print("1. Humano vs Humano (2 jugadores)") +print("2. Humano vs PC (Próximamente...)") + +opcion = "" +while opcion != "1": + opcion = input("Elegí una opción (1 para jugar): ") + if opcion == "1": + print("\nBuenísimo! Arranca el juego.") + elif opcion == "2": + print("\nEste modo va a estar disponible en la próxima unidad!") + else: + print("Opción no válida. Poné 1 o 2.") + + +# Declaro las variables para luego validarlas +p1, p2, p3 = "1", "2", "3" +p4, p5, p6 = "4", "5", "6" +p7, p8, p9 = "7", "8", "9" + +# Defino matriz para poder almacenar las X y O para luego poder controlar las ubicaciones y lineas + +tablero = [p1, p2, p3, p4, p5, p6, p7, p8, p9] + +imprime_tablero() + + +# Integración del código de jugador X y jugador O al código de Ingrid. +# Comienza el jugador X +jugadorX = True +jugadorO = False +jugadas = 0 + +while jugadas < 9: + if comprueba_ganador(): + print("GANASTE!") + break + else: + + if jugadorX: + print("Turno del jugador X") + else: + print("Turno del jugador O") + + numeroElegido = int(input("Elegir un número del 1 al 9: ")) + + if 1 <= numeroElegido <= 9: + + if tablero[numeroElegido - 1] not in ['X', 'O']: + + if jugadorX: + tablero[numeroElegido - 1] = 'X' + jugadorX = False + jugadorO = True + else: + tablero[numeroElegido - 1] = 'O' + jugadorX = True + jugadorO = False + + jugadas += 1 + + imprime_tablero() + + else: + print("Ubicación no disponible.") + + else: + print("Ingrese un número válido del 1 al 9.") + +if jugadas == 9: + print("La partida terminó empatada") diff --git a/test.py b/test.py new file mode 100644 index 0000000..829d3aa --- /dev/null +++ b/test.py @@ -0,0 +1,7 @@ +import tablero + +imprime_tablero = tablero.crear_tablero() +mostrar_tablero = tablero.mostrar_tablero(imprime_tablero) + +"""print(imprime_tablero) """ +"""print(mostrar_tablero) """ \ No newline at end of file