You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/sesion09/Readme.md
+24-19Lines changed: 24 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1201,7 +1201,7 @@ git commit -m "Sesión 09"
1201
1201
git push origin main
1202
1202
```
1203
1203
1204
-
---
1204
+
---
1205
1205
1206
1206
#### Resumen
1207
1207
@@ -1252,25 +1252,28 @@ psg-oop-2025/
1252
1252
1253
1253
---
1254
1254
1255
-
1. Crea el juego **“Piedra, Papel o Tijera”** implementando el patrón de diseño **Singleton**, con el fin de garantizar que exista **una única instancia del juego** en ejecución.
1256
-
1255
+
1. Crea el juego **Piedra, Papel o Tijera** implementando el patrón de diseño **Singleton**
1257
1256
En esta versión, un jugador compite contra la computadora, la cual selecciona aleatoriamente entre las tres opciones disponibles:
1258
1257
1259
1258
`Piedra` , `Papel` , `Tijera`
1260
1259
1261
-
El sistema debe registrar las partidas ganadas tanto por el jugador como por la computadora, manteniendo el control del puntaje dentro de la **única instancia** del juego.
1260
+
Se debe registrar las partidas ganadas tanto por el jugador como por la computadora, manteniendo el control del puntaje dentro de la **única instancia** del juego.
1262
1261
1263
-
*(1/3)*
1262
+
*(1/4)*
1264
1263
1265
1264
---
1266
1265
1267
-
Implementa la clase **`PiedraPapelTijera`** aplicando el patrón de diseño **Singleton**, asegurando que exista **una única instancia del juego** durante toda la ejecución.
1266
+
Implementa la clase **PiedraPapelTijera** aplicando el patrón de diseño **Singleton**, asegurando que exista **una única instancia del juego** durante toda la ejecución.
1268
1267
1269
1268
La clase debe incluir los siguientes métodos:
1270
1269
1271
-
-**`iniciarPartida()`** → Permite jugar una ronda contra la computadora, que selecciona aleatoriamente entre `Piedra`, `Papel` o `Tijera`.
1272
-
-**`mostrarPuntaje()`** → Muestra el puntaje acumulado del jugador y de la computadora.
1273
-
-**`reiniciarJuego()`** → Restablece los puntajes a cero.
1270
+
-`iniciarPartida()`: Permite jugar una ronda contra la computadora
1271
+
-`mostrarPuntaje()`: Muestra el puntaje acumulado del jugador y de la computadora.
1272
+
-`reiniciarJuego()`: Restablece los puntajes a cero.
1273
+
1274
+
*(2/4)*
1275
+
1276
+
---
1274
1277
1275
1278
Además, se debe implementar un **menú interactivo en consola** con las siguientes opciones:
1276
1279
@@ -1281,38 +1284,40 @@ Además, se debe implementar un **menú interactivo en consola** con las siguien
1281
1284
4. Salir
1282
1285
```
1283
1286
1284
-
*(2/3)*
1287
+
*(3/4)*
1285
1288
1286
1289
---
1287
1290
1288
1291
- Elabora el **análisis** y el **diagrama de clases** de la clase `PiedraPapelTijera` en el archivo `ejercicio_01.md`.
1289
1292
- Implementa el código en **Python** dentro del archivo `ejercicio_01.py`.
1290
-
- Asegúrate de que la clase incluya **atributos** y **métodos** coherentes con su propósito.
1291
-
- Utiliza buenas prácticas de *nomenclatura*, *encapsulamiento* y *legibilidad*
1292
1293
- Prueba el juego en la consola para verificar su correcto funcionamiento antes de enviar tu solución
1293
1294
1294
-
*(3/3)*
1295
+
*(4/4)*
1295
1296
1296
1297
---
1297
1298
1298
-
2. Un DJ requiere una nueva consola de mezcla llamada **`BeatBox`**, capaz de mezclar pistas de audio en tiempo real.
1299
-
Para garantizar que exista **una única instancia de la consola en ejecución**, se debe implementar el patrón de diseño **Singleton**.
1299
+
2. Un DJ requiere una nueva consola de mezcla llamada **`BeatBox`**, capaz de mezclar pistas de audio en tiempo real.
1300
1300
La consola debe permitir:
1301
1301
-**Seleccionar una pista de audio**
1302
1302
-**Ajustar el volumen** (subir o bajar)
1303
1303
-**Mostrar el estado actual** de la consola (pista seleccionada y nivel de volumen)
1304
1304
-**Aplicar un único efecto de sonido a la vez**, entre las opciones: `eco`, `reverb` o `distorsión`
1305
1305
1306
-
*(1/3)*
1306
+
*(1/4)*
1307
1307
1308
1308
---
1309
1309
1310
-
Crea la clase **`BeatBox`** implementando el patrón de diseño **Singleton**, de manera que exista **una única instancia de la consola de mezcla** durante la ejecución.
1310
+
Crea la clase **`BeatBox`** implementando el patrón de diseño **Singleton**
1311
1311
La clase debe incluir los siguientes métodos:
1312
1312
-**`seleccionar_pista()`** → Permite elegir una pista de audio.
1313
1313
-**`ajustar_volumen()`** → Permite subir o bajar el volumen.
1314
1314
-**`aplicar_efecto()`** → Aplica un efecto de sonido (eco, reverb o distorsión).
1315
1315
-**`mostrar_estado()`** → Muestra el estado actual de la consola (pista seleccionada y nivel de volumen).
1316
+
1317
+
*(24)*
1318
+
1319
+
---
1320
+
1316
1321
El programa debe ofrecer un menú con las siguientes opciones:
1317
1322
```markdown
1318
1323
1. Ingresar el nombre de la pista de audio
@@ -1322,7 +1327,7 @@ El programa debe ofrecer un menú con las siguientes opciones:
1322
1327
5. Salir
1323
1328
```
1324
1329
1325
-
*(2/3)*
1330
+
*(3/4)*
1326
1331
1327
1332
---
1328
1333
@@ -1332,7 +1337,7 @@ El programa debe ofrecer un menú con las siguientes opciones:
1332
1337
- Utiliza buenas prácticas de *nomenclatura*, *encapsulamiento* y *legibilidad*
1333
1338
- Prueba el juego en la consola para verificar su correcto funcionamiento antes de enviar tu solución
0 commit comments