From d7f91fb46c4f07edfd24914e0cc8234078d50b6d Mon Sep 17 00:00:00 2001 From: Federico Mazzei Date: Wed, 29 Jul 2026 17:18:37 -0300 Subject: [PATCH] incluyo funciones en el juego --- jugadores.txt | 2 + tateti_1.4.py | 128 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+) create mode 100644 jugadores.txt create mode 100644 tateti_1.4.py diff --git a/jugadores.txt b/jugadores.txt new file mode 100644 index 0000000..9232b35 --- /dev/null +++ b/jugadores.txt @@ -0,0 +1,2 @@ +JugadorX = Fede +JugadorO = Juan diff --git a/tateti_1.4.py b/tateti_1.4.py new file mode 100644 index 0000000..5b2edd2 --- /dev/null +++ b/tateti_1.4.py @@ -0,0 +1,128 @@ +''' +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) + datos_jugadores() Solicito nombre de los jugadores y lo guardo en un archivo .TXT (jugadores.txt) + 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]} ") + +""" +Defino una función que permite cargar datos de los jugadores +""" +def datos_jugadores(modalidad): + """Grabo los datos de los jugadores en un archivo TXT""" + archivo = open('./juego_tateti/jugadores.txt', 'w') + + """ El jugadorX puede jugar solo o contra otro humano por eso se define afuera """ + nombre_jugadorX = input('\nIngrese el nombre del jugador X: ') + + archivo.write('JugadorX = ' + nombre_jugadorX + '\n') + + if modalidad == str(1): + nombre_jugadorO = input('\nIngrese el nombre del jugador O: ') + + print("¡Buenisimo! " + nombre_jugadorX + " vs " + nombre_jugadorO + "\nArranca el juego.") + + archivo.write('JugadorO = ' + nombre_jugadorO + '\n') + + else: + + print("\n " + nombre_jugadorX + " esta modalidad va a estar disponible próximamente!\n") + + archivo.close() + +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": + datos_jugadores(opcion) + + elif opcion == "2": + datos_jugadores(opcion) + + 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 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 comprueba_ganador(): + print("¡GANASTE!") + break + elif jugadas==9: + print("La partida terminó empatada")