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
Devuelve la secuencia de Fibonacci hasta el n-ésimo número.
@@ -677,7 +677,7 @@ print (fibonacci(5))
677
677
678
678
Documentación estilo reST
679
679
680
-
```python
680
+
```python [3|5-6|7-8|9|10-12]
681
681
deffibonacci(n: int) -> str:
682
682
"""
683
683
Devuelve la secuencia de Fibonacci hasta el n-ésimo número.
@@ -1408,27 +1408,112 @@ psg-oop-2025/
1408
1408
1409
1409
---
1410
1410
1411
+
1. Una empresa de juegos moviles crea un nuevo juego **Dados de la Suerte**, las reglas son sencillas:
1412
+
1413
+
- El jugador lanza **dos** dados
1414
+
- Si la suma es **7 o 11 gana**
1415
+
- Si es **2, 3 o 12 pierde**
1416
+
- Con cualquier otro valor puede volver a lanzar los dados.
1417
+
1418
+
En el futuro tiene planificado registrar el nombre del jugador y su puntuación más alta
1419
+
pero para el lanzamiento inicial no es necesario
1420
+
1421
+
*(1/5)*
1422
+
1411
1423
---
1412
1424
1413
-
1. Un juego de dados de la suerte, el jugador lanza dos dados y si la suma es 7 o 11 gana, si es 2, 3 o 12 pierde, cualquier otro valor puede volver a lanzar los dados. En un futuro podrías registrar el nombre del jugador y su puntuación más alta.
1414
1425
1415
-
```markdown
1416
-
- Crea el análisis, diagrama de clases y el código.
1417
-
- Documenta el código y usa anotaciones de tipo.
1426
+
Cuenta con un flujo básico:
1427
+
1428
+
- Jugador inicia el juego
1429
+
- Juego lanza los dados automáticamente
1430
+
- Juego muestra el resultado y si ganó, perdió o si puede volver a lanzar
1431
+
- Jugador responde SI o NO para volver a lanzar los dados
1432
+
- El juego termina cuando el jugador decide NO lanzar más o gana o pierde
1433
+
- El juego muestra un mensaje final con el resultado
1434
+
1435
+
*(2/5)*
1436
+
1437
+
1438
+
---
1439
+
1440
+
- Crea la clase `DadosDeLaSuerte` donde se implemente el flujo básico del juego
1441
+
- Identifica atributos y métodos relevantes para la clase
1442
+
- Implementa la **lógica del juego** según las reglas descritas
1443
+
- Documenta el código y usa **anotaciones de tipo**
1418
1444
- Utiliza los principios KISS, DRY y YAGNI
1419
-
- Utiliza algún estilo de documentación
1420
-
```
1445
+
1446
+
*(3/5)*
1421
1447
1422
1448
---
1423
1449
1424
-
2. Un sistema de gestión de tareas, donde se pueden agregar, eliminar y marcar tareas como completadas. En un futuro podrías agregar fechas de vencimiento y prioridades a las tareas.
1450
+
Realiza el **análisis** y **diagrama de clases** en el archivo `ejercicio_01.md`
1425
1451
1426
-
```markdown
1427
-
Crea el análisis, diagrama de clases y el código.
1428
-
Documenta el código y usa anotaciones de tipo.
1429
-
Utiliza los principios KISS, DRY y YAGNI
1430
-
Utiliza algún estilo de documentación
1431
-
```
1452
+
Escribe el código en Python para la clase de tu diagrama de clases en el archivo `ejercicio_01.py`
1453
+
1454
+
*(4/5)*
1455
+
1456
+
---
1457
+
1458
+
- Asegúrate de que la clase incluyan *atributos* y *métodos* coherentes con su propósito
1459
+
- Utiliza buenas prácticas de *nomenclatura*, *legibilidad* y *PEP 8*
1460
+
- Juega varias veces para verificar que la lógica del juego funciona correctamente
1461
+
1462
+
*(5/5)*
1463
+
1464
+
---
1465
+
1466
+
2. Una empresa de citas necesita un programa para gestionar tareas.
1467
+
1468
+
El programa puede:
1469
+
1470
+
- Agregar nuevas tareas
1471
+
- Eliminar tareas existentes
1472
+
- Marcar tareas como completadas
1473
+
1474
+
En el futuro se planea agregar fechas de vencimiento y prioridades a las tareas
1475
+
1476
+
*(1/5)*
1477
+
1478
+
---
1479
+
1480
+
Cada tarea tiene un *título*, una *descripción* y un *estado* (completada o no completada).
1481
+
1482
+
Cuenta con un menú básico:
1483
+
1484
+
1.**Agregar** una nueva tarea proporcionando un título y una descripción
1485
+
2.**Eliminar** una tarea por su título
1486
+
3.**Marcar** una tarea como completada por su título
1487
+
4.**Listar** todas las tareas con su estado actual
1488
+
1489
+
*(2/5)*
1490
+
1491
+
---
1492
+
1493
+
- Crea la clase `Tarea` para representar una tarea individual con atributos y métodos relevantes
1494
+
- Crea la clase `GestorDeTareas` para gestionar **una colección** de tareas, incluyendo métodos para agregar, eliminar y marcar tareas como completadas
1495
+
- Documenta el código y usa **anotaciones de tipo**
1496
+
- Utiliza los principios KISS, DRY y YAGNI
1497
+
1498
+
*(3/5)*
1499
+
1500
+
---
1501
+
1502
+
- Realiza el **análisis** y **diagrama de clases** en el archivo `ejercicio_02.md`
1503
+
- Escribe el código en Python para las clases de tu diagrama de clases en el archivo `ejercicio_02.py`
1504
+
- Implementa un menú interactivo para que el usuario pueda gestionar las tareas
1505
+
- Documenta el código y usa **anotaciones de tipo**
1506
+
- Utiliza los principios KISS, DRY y YAGNI
1507
+
1508
+
*(4/5)*
1509
+
1510
+
---
1511
+
1512
+
- Asegúrate de que las clases incluyan *atributos* y *métodos* coherentes con su propósito
1513
+
- Utiliza buenas prácticas de *nomenclatura*, *legibilidad* y *PEP 8*
1514
+
- Prueba las clases creando instancias y realizando operaciones de agregar, eliminar y marcar tareas como completadas
0 commit comments