Compare commits
3 commits
2abce7d50d
...
c3660f10c9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c3660f10c9 | ||
|
|
d7f91fb46c | ||
|
|
f37cb5a9d1 |
6 changed files with 144 additions and 108 deletions
BIN
__pycache__/tablero.cpython-313.pyc
Normal file
BIN
__pycache__/tablero.cpython-313.pyc
Normal file
Binary file not shown.
2
jugadores.txt
Normal file
2
jugadores.txt
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
JugadorX = Fede
|
||||
JugadorO = Juan
|
||||
7
tablero.py
Normal file
7
tablero.py
Normal file
|
|
@ -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)
|
||||
108
tateti_1.3.py
108
tateti_1.3.py
|
|
@ -1,108 +0,0 @@
|
|||
'''
|
||||
Juego TA-TE-TI
|
||||
Profesora = ANA LAURA ALMADA
|
||||
Alumnos de UNL Virtual - Grupo Venus
|
||||
Federico Alejandro Mazzei ✅
|
||||
Fernando Zaldívar Posse ✅
|
||||
Matías Mauricio Machado Pérez ✅
|
||||
Sara Somaré ✅
|
||||
Ingrid Celia Spessotti ✅
|
||||
En linkode https://linkode.org/#RMKQuCRyK0VKoiYU6GFdo7
|
||||
luego de cada edición presionen el botón de "Nueva versión"
|
||||
así vamos viendo la evolución de nuestro código. Recomiendo copiar esto
|
||||
y trabajarlo en sus IDE's localmente y cuando tengan algo funcional lo suben ;)
|
||||
Nos hablamos
|
||||
Dejo una lista de tareas a realizar :)
|
||||
TODO: Iniciar el juego por el jugador X
|
||||
TODO: Iterar entre jugador X y O
|
||||
TODO: Validar que no ingresen un número ingresado
|
||||
TODO: Reemplazar los valores p1, p2, p3 etc. con los valores ingresados
|
||||
TODO: Chequear si se forman los tres en linea para verificar si existe un ganador
|
||||
las formas ganadoras serían:
|
||||
[p1,p2,p3], [p4,p5,p6], [p7,p8,p9]
|
||||
[p1,p4,p7], [p2,p5,p8], [p3,p6,p9]
|
||||
[p1,p5,p9], [p7,p5,p3]
|
||||
TODO: Mejorar el código con lo que nos enseñaron hasta el momento.
|
||||
'''
|
||||
|
||||
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("\n¡Buení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 pder controlar las ubicaciones y lineas
|
||||
|
||||
tablero = [p1 , p2, p3, p4, p5, p6, p7, p8, p9]
|
||||
|
||||
|
||||
print(f"\n {p1} | {p2} | {p3} \n---+---+---\n {p4} | {p5} | {p6} \n---+---+---\n {p7} | {p8} | {p9} ")
|
||||
|
||||
#Integración del código de jugador X y jugador O al código de Ingrid.
|
||||
# Comienza el jugador X
|
||||
# Cualquier sugerencia, crítica constructiva o modificación en el código es bienvenida!
|
||||
jugadorX = True
|
||||
jugadorO = False
|
||||
jugadas = 0
|
||||
|
||||
while jugadas < 9:
|
||||
# Comprueba si hay un ganador
|
||||
if (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]):
|
||||
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
|
||||
|
||||
print(f"\n {tablero[0]} | {tablero[1]} | {tablero[2]}")
|
||||
print("---+---+---")
|
||||
print(f" {tablero[3]} | {tablero[4]} | {tablero[5]}")
|
||||
print("---+---+---")
|
||||
print(f" {tablero[6]} | {tablero[7]} | {tablero[8]}")
|
||||
|
||||
else:
|
||||
print("Ubicación no disponible.")
|
||||
|
||||
else:
|
||||
print("Ingrese un número válido del 1 al 9.")
|
||||
128
tateti_1.4.py
Normal file
128
tateti_1.4.py
Normal file
|
|
@ -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")
|
||||
7
test.py
Normal file
7
test.py
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
import tablero
|
||||
|
||||
imprime_tablero = tablero.crear_tablero()
|
||||
mostrar_tablero = tablero.mostrar_tablero(imprime_tablero)
|
||||
|
||||
"""print(imprime_tablero) """
|
||||
"""print(mostrar_tablero) """
|
||||
Loading…
Add table
Reference in a new issue