Skip to content

Commit 946099d

Browse files
committed
Refine exercise for "Piedra, Papel o Tijera" game: enhance instructions, clarify Singleton pattern usage, and add implementation details
1 parent 011770d commit 946099d

File tree

1 file changed

+41
-7
lines changed

1 file changed

+41
-7
lines changed

content/sesion09/Readme.md

Lines changed: 41 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1250,16 +1250,50 @@ psg-oop-2025/
12501250

12511251
---
12521252

1253-
1. Crear el juego "Piedra, Papel o Tijera" utilizando el patrón Singleton.
1254-
- El juego debe permitir a un jugador jugar contra la computadora
1255-
(la computadora elige al azar entre piedra, papel o tijera).
1256-
- El juego debe llevar un registro de las partidas ganadas por el jugador y la computadora.
1257-
- El juego debe permitir reiniciar el juego y mostrar el score.
1258-
- Debe tener un menú para iniciar el juego, jugar una partida, reiniciar el juego y salir.
1259-
- El juego debe ser ejecutable desde la terminal.
1253+
1. Crea el juego **"Piedra, Papel o Tijera"** utilizando el patrón **Singleton**
1254+
para asegurar que solo exista **una única instancia del juego** en ejecución
1255+
1256+
El juego permite que un jugador compita contra la computadora, la cual elige aleatoriamente entre las tres opciones:
1257+
1258+
`Piedra` , `Papel` , `Tijera`
1259+
1260+
El objetivo es registrar las partidas ganadas por el jugador y por la computadora, manteniendo el control del puntaje dentro de la **única instancia** del juego
1261+
1262+
*(1/3)*
1263+
1264+
---
1265+
1266+
Crea la clase `JuegoPPT` implementando el patrón **Singleton**
1267+
Debe incluir:
1268+
1269+
- Un método para **iniciar una partida**
1270+
- Un método para **mostrar el puntaje actual**
1271+
- Un método para **reiniciar el juego** (puntajes en cero)
1272+
- Un **menú interactivo en consola** que permita:
1273+
```markdown
1274+
1. Iniciar una nueva partida
1275+
2. Mostrar puntajes
1276+
3. Reiniciar el juego
1277+
4. Salir
1278+
```
1279+
1280+
*(2/3)*
12601281

12611282
---
12621283

1284+
Realiza el **análisis** y el **diagrama de clases** para la clase `JuegoPPT` en el archivo `ejercicio_04.md`
1285+
1286+
Escribe el código Python en el archivo `ejercicio_04.py`
1287+
1288+
- Asegúrate de que las clases incluyan *atributos* y *métodos* coherentes con su propósito
1289+
1290+
- Utiliza buenas prácticas de *nomenclatura*, *encapsulamiento* y *legibilidad*
1291+
1292+
- Prueba el juego en la consola para verificar su correcto funcionamiento
1293+
1294+
*(3/3)*
1295+
1296+
---
12631297

12641298
<!-- .slide: data-background-image="../../content/psg-bg-dark.png" data-background-size="100%"-->
12651299

0 commit comments

Comments
 (0)