ID actividad: PROG-2425-U2-01
Agrupamiento de la actividad: Individual
La actividad consiste en resolver varios ejercicios de la Unidad 2 con Python. Los estudiantes deberán crear un programa para cada ejercicio, aplicando los conceptos de condicionales, bucles, captura de excepciones y depuración.
A partir de ahora, todos los programas entregados en Python deben tener la función main()
y deben cumplir con la "Separación de Responsabilidades". Para ello, los estudiantes deberán crear las funciones sw única responsabilidad necesarias para resolver el problema.
Objetivo:
- Aplicar las sentencias condicionales para resolver problemas que requieren decisiones lógicas.
- Utilizar bucles e iteraciones para automatizar procesos repetitivos.
- Manejar excepciones para evitar errores en la ejecución del programa.
- Mejorar el código mediante la depuración y detección de errores.
Trabajo a realizar:
- Realizar los ejercicios siguientes:
- Práctica 2.1: Sentencias condicionales (nomenclatura de los programas: ej21_01.py ... ej21_10.py)
- Práctica 2.2: Sentencias iterativas y saltos (nomenclatura de los programas: ej22_01.py ... ej22_25.py)
- Práctica 2.3: Capturas de excepciones (nomenclatura de los programas: ej23_01.py ... ej23_05.py)
- Práctica 2.4: Depurar programas (nomenclatura del programa: ej24_01.py)
- Crear un archivo Python para cada ejercicio y organizar los archivos según la estructura solicitada.
- Los programas deben ubicarse en la carpeta
src
. Cada grupo de programas dentro de la subcarpeta adecuada: condicionales, bucles, excepciones, depuracion - Realizar las pruebas unitarias para las funciones de al menos 10 ejercicios a tu elección. Estas pruebas se almacenarán en la carpeta
tests
con la nomenclaturatest_ej2X_XX.py
. - La práctica 2.4 debes documentarla con DocStrings. Para ello, lee atentamente los siguientes enlaces: 2.5.-Documentar el código y 2.5.1-¿Deberías documentar tu código?. Puedes usar el formato que más te guste (Docstrings de Google, Texto Reestructurado, Cadenas de documentación NumPy/SciPy o Epitexto)
- Temario trabajado en clase.
- Recursos disponibles en la web del curso: U2: Sentencias condicionales y repetitivas.
RA y CE evaluados:
-
RA2: Implementar sentencias condicionales y repetitivas en la resolución de problemas.
- CE2.1: Aplicar estructuras de control condicionales en diferentes problemas.
- CE2.2: Utilizar sentencias iterativas y excepciones en la implementación de soluciones.
-
RA3: Depurar y validar el funcionamiento del código.
- CE3.1: Identificar y corregir errores en los programas mediante técnicas de depuración.
- CE3.2: Usar pruebas unitarias para validar el correcto funcionamiento del código.
Conlleva presentación: NO
Rubrica:
Criterio | 0 - No hace nada | 4 - No supera | 6 - Supera | 8 - Supera con notable | 10 - Lo hace por encima de lo exigido |
---|---|---|---|---|---|
Criterio 1: Grado de cumplimiento y calidad de la práctica. | No realiza ninguna parte de la práctica, no participa ni intenta completar las tareas. | Intenta realizar la práctica, pero no logra cumplir los requisitos mínimos; la práctica está incompleta o con errores graves. | Cumple con los requisitos mínimos, aunque con algunos errores o áreas de mejora. Comprensión suficiente pero limitada. | Realiza la práctica correctamente, superando las expectativas básicas. Pocos errores, buena comprensión de los conceptos. | Realiza la práctica de manera excepcional, con aportaciones originales. Sin errores y demuestra una comprensión profunda. |
Criterio 2: Uso de buenas prácticas de programación (nombres de variables, comentarios, estructura). | No sigue ningún estándar o convención. | Sigue algunas prácticas, pero de manera inconsistente. | Sigue prácticas correctas, aunque con algunas áreas de mejora. | Sigue las mejores prácticas de programación de manera consistente. | Sigue de manera rigurosa las mejores prácticas y además aporta claridad y legibilidad extra al código. |
La entrega tiene que cumplir las condiciones de entrega para poder ser calificada. En caso de no cumplirlas podría calificarse como no entregada.
- Cumple la fecha y hora de entrega.
- Entrega en GitHub Classroom: La actividad se debe entregar utilizando el assignment creado en GitHub Classroom, que está basado en el siguiente repositorio de plantilla: DAM-DAWB-PROG-2425_U2_Ejercicios.
- El repositorio ya incluye la estructura base con carpetas como
src
ytests
. Los estudiantes deben añadir sus soluciones en la carpeta correspondiente. - Asegúrate de que el profesor tiene permisos para acceder a tu repositorio. Si no se puede acceder, es equivalente a no haber entregado la actividad.
- El repositorio ya incluye la estructura base con carpetas como
- Estructura del repositorio:
- Carpeta
src
: Contendrá los programas correspondientes a los ejercicios solicitados. - Carpeta
tests
: Contendrá las pruebas unitarias para verificar el correcto funcionamiento de las soluciones. - Carpeta
.github/workflows
: No debe eliminarse ni modificarse su contenido. - Fichero
requirements.txt
: No debe eliminarse ni modificarse su contenido.
- Carpeta
- Id del documento a entregar: El nombre del repositorio será generado automáticamente por GitHub Classroom, por lo que no es necesario que los estudiantes lo modifiquen.
Custodia de tu documentación:
- Es responsabilidad del alumnado la custodia y guarda de los trabajos, documentos, y cualquier otro material que realice durante las prácticas o en clase, por tanto, tendrán que asegurarse que quedan a salvo siempre que abandonen el aula, no siendo responsabilidad del profesorado la perdida de este material.
- Asegúrate de mantener copias seguras en servicios como Google Drive, GitHub, GitLab, Bitbucket, etc.
Fecha y defensa de las entregas de prácticas/trabajos/ejercicios:
- Las prácticas tendrán una fecha de entrega clara, que no se podrá cambiar bajo ninguna circunstancia. Quedando a elección del profesor posibles excepciones justificadas.
- Como norma general, la entrega consistirá en:
- Subida a la plataforma (por defecto) en fecha.
- Defensa en clase (si se solicita). Como regla general:
- Los ejercicios individuales se corregirán en clase delante del profesor, defendiendo el trabajo.
- Los ejercicios en grupo se podrán presentar en grupo o un componente del grupo de forma aleatoria. El método será elegido por el profesor.Corrección de las actividades. Como regla general:
Causas para no corregir una entrega (ejercicio, práctica, examen):
- No se cumplen las condiciones de entrega.
- Se ha detectado la posibilidad de copiado de todo o parte de la prueba. Esto incluye textos (total o parcial) de internet y/o sin hacer referencia a la fuente.
- Atención OJO con Chat GPT, Copilot, etc. -> Asegurate de saber que haces.
- Se entrega fuera de plazo (aunque sean unos segundos).
- En caso de entrega a través de GitHub:
- Añadir en el archivo
README.md
instrucciones para compilar y ejecutar el código, descripción de la aplicación, autoría y referencias.
- Añadir en el archivo
- En caso de código:
- Si el código no compila.