Materia
Ejercicios


Tarea 1: Tic Tac Turtle

Objetivos de aprendizaje

Después de resolver la tarea 1, usted será capaz de:

  • Imprementar un programa que requiera de entradas y salidas.
  • Diseñar e implementar programas simples usando algunas sentencias elementales de Python (asignaciones, if, for y while).
  • Entender el proceso de desarrolar y probar un programa en el computador usando las herramientas de desarrollo del lenguaje (Intérprete, consola, IDE).
  • Usar el módulo Turtle para hacer dibujos sencillos.

Enunciado

La tarea consiste en desarrollar un programa que permita dar instrucciones a la tortuga con el objetivo de que dos usuarios puedan jugar al conocido juego del gato.

La tortuga y las funciones que la manejan se encuentran disponibles en el módulo Turtle de Python. (Revisa la documentación que hemos preparado).

Qué hay que implementar

Al iniciar el programa se debe ingresar el nombre de los jugadores, ver imagen de ejemplo.

../../_images/Inicio.png

Una vez ingresado el nombre de los jugadores, se debe dibujar el tablero del gato, la tortuga debe quedar siempre en la esquina inferior izquierda, ver imagen.

../../_images/Tablero.png

A continuación se debe solicitar que se ingrese la jugada a los jugadores, considerar que la jugada estará determinada por el número del cuadrante ocupado en el tablero, ver imagen.

../../_images/Tablero2.png

Así debería verse el programa durante su ejecución:

../../_images/Jugar.png ../../_images/Tablero_ejem.png

El programa debe validar que las jugadas ingresadas estén en el rango 1 a 9 (ambos incluidos) y evitar que un jugador ingrese su opción sobre un cuadrante que ya tiene una jugada registrada. El programa debe solicitar la jugada hasta que se ingrese una opción válida, ver el siguiente ejemplo.

../../_images/error.png

El juego termina cuando un jugador logra hacer que 3 cuadrantes consecutivas tengan su jugada (X ó O) o bien no quedan más cuadrantes en los cuales se pueda realizar una jugada. Ver ejemplos de cuando terminaría el juego.

../../_images/Ganar1.png ../../_images/Ganar2.png ../../_images/Ganar3.png ../../_images/Empate.png

El juego al momento de finalizar debe señalar el nombre del jugador que ganó y contabilizar que ganó el juego, si es que hay un ganador, en caso contrario debe señalar que hay empate.

../../_images/Ejem_Ganar.png ../../_images/Ganar1.png ../../_images/Ejem_Empate.png ../../_images/Empate.png

Al momento de finalizar el juego debe preguntar al usuario si desea seguir jugando, en el caso que así sea, se debe iniciar un nuevo juego tal como se describió anteriormente (no debe volver a pedir los nombres de los jugadores, se asume que son los mismos pero para otro juego).

../../_images/Seguir.png

En caso que no desee seguir jugando muestra el resultado final, señalando el nombre del jugador que más partidos ganó y el marcador final (la cantidad de partidos ganados de cada jugador). En el caso sa haber empate muestra que hubo empate y el marcador final.

../../_images/Final.png

Consideraciones

Para resolver la tarea No puede hacer uso de materia más avanzada que la vista para el primer certamen (Ej, uso de funciones, listas y otros)

Entrega

La fecha de entrega es el Jueves 17 de Abril a las 23:00 hrs.

La tarea debe ser resuelta en equipos de dos o tres personas. De lo contrario habrá penalización en la nota.

Sólo uno de los integrantes del equipo debe subir la tarea en la sección Tareas de la plataforma Moodle, ingresando al campus que corresponda. ¡No la suba a la sección de su paralelo!

Se debe entregar un archivo con el nombre tarea-1-RUT.py, reemplazando RUT por el RUT del integrante que subirá la tarea. Sólo debe ir el RUT sin el dígito verificador. Por ejemplo: tarea-1-18000123.py.

Al principio del archivo se debe poner un comentario indicando los RUT de los integrantes del equipo, como en el siguiente ejemplo:

# Integrantes:
# 18000123-0 Perico Los Palotes
# 18000456-7 Fulanita de Tal
# 18000890-k Federico Santa Maria

No se puede subir ningún archivo adicional.

Evite dejar para última hora la entrega de la tarea. Cerca del plazo final, la plataforma seguramente estará sobrecargada.

Se recibirán tareas fuera de plazo, pero serán sancionadas, el retraso es máximo un día.

Recuerde que para que todos los miembros del equipo sean evaluados, deben estar matriculados en “Alumnos de CAMPUS” (donde CAMPUS es el campus al cual usted pertenece).

Políticas de copia

Usted puede discutir la tarea con compañeros de otros grupos, pero bajo ningún motivo puede compartir o copiar el código de su tarea. Cada equipo debe escribir su propio código.

Las políticas de copia de la asignatura rigen para la tarea.

En caso de tener problemas con el desarrollo de la tarea, consulte a su profesor o asista a las ayudantías.