Programación I

Asignatura de Programación I

Archive for the ‘Sin categoría’ Category

Inicio del curso 2019-20 de Programación 1

leave a comment

Las clases de Programación 1 del curso 2019-20 comienzan el próximo lunes 16 de septiembre de 2019 y se imparten en el aula 18 del edificio Torres Quevedo. En la primera clase se presentará la asignatura y se darán las directrices sobre su organización y el modo de abordar su estudio:

  • Lunes 16 de septiembre a las 13:00 para los alumnos del grupo de mañana de primer curso.
  • Lunes 16 de septiembre a las 19:00 para los alumnos del grupo de tarde de primer curso.

Las siguientes clases se impartirán según los horarios habituales del cuatrimestre de otoño.

Durante la primera semana de curso, del 16 al 20 de septiembre, no hay programadas sesiones de prácticas. Las primeras sesiones de prácticas de Programación 1 se celebrarán a partir del lunes 23 de septiembre. Es de vital importancia preparar y participar en la primera sesión de prácticas de la asignatura ya que en ella se ha de aprender el manejo de las herramientas de programación que van a ser utilizadas a lo largo de todo el cuatrimestre.

Written by profesor

Septiembre 16th, 2019 at 5:12 pm

Posted in Sin categoría

Calificaciones de la 2.ª prueba voluntaria de evaluación

leave a comment

Se han publicado las calificaciones de la segunda prueba voluntaria de evaluación de Pogramación 1 en este enlace.

Los criterios de evaluación han sido los siguientes:

  • Compilación: es necesario que el código suministrado esté libre de errores de compilación. Los errores relativos a la inclusión de ficheros han sido corregidos por el profesor, pero penalizan, al igual que la compilación con advertencias. Los errores sintácticos que impiden la compilación y ejecución del código tienen como resultado una calificación de 0.
  • Ejecución: Se ha comprobado el funcionamiento de la función «contarUsos» con distintos ficheros:
    • “0-0-vacio.csv” (columna «0-0»): un fichero sin datos de usos, solo con la cabecera.
    • “0-1-un-uso-circular.csv” (colunna «0-1»): un fichero con la línea de cabecera y un solo uso, correspondiente a un uso circular.
    • “0-n-solo-usos-circulares.csv” (colunna «0-n»): un fichero con la línea de cabecera y 10 usos, exclusivamente circulares.
    • “1-0-un-uso-traslado.csv” (colunna «1-0»): un fichero con la línea de cabecera y un solo uso, correspondiente a un traslado.
    • “1-1-dos-usos-circular-traslado.csv” (colunna «1-1a»): un fichero con la línea de cabecera y dos usos, uno circular y otro de traslado, en ese orden.
    • “1-1-dos-usos-traslado-circular.csv” (colunna «1-1b»): un fichero con la línea de cabecera y dos usos, uno de traslado y otro circular, en ese orden.
    • “n-0-solo-usos-traslado.csv” (colunna «n-0»): un fichero con la línea de cabecera y 10 usos, exclusivamente de traslado.
    • “n-m-usos-16.csv” (colunna « f16»): el fichero «usos-16.csv».
    • “n-m-usos-17.csv” (colunna «f17»): el fichero «usos-17.csv», modificado para que el último uso sea circular.
    • “fichero-no-existente.csv” (colunna «f ∄»): el nombre de un fichero que no existe, con el objetivo de comprobar que la función «contarUsos» devuelve false.
En los nueve primeros casos, se han otorgado 0,4 puntos por cada cálculo de usos circulares o de traslado correcto y 0,2 cuando la función contarUsos devolvía true. En la columna «Comentarios» se indican los resultados de las pruebas erróneas (se indica el fichero con el que se probó, los resultados obtenidos y cuáles son los resultados correctos).
En el directorio Datos/Bizi/Test se han dejado los ficheros con los que se han realizado las pruebas (excepto “n-m-usos-16.csv” y “n-m-usos-17.csv”, que son como los usados en prácticas y el trabajo).
La evaluación se ha basado exclusivamente en la compilación y ejecución, puesto que el diseño ya ha sido evaluado a través del trabajo obligatorio.
Se ha publicado también la subida de nota obtenida por cada estudiante como resultado de las calificaciones de las pruebas voluntarias, en este enlace.
La revisión de las calificaciones, así como cualquier clarificación sobre los comentarios realizados se atenderán en horario de tutorías del profesor Miguel Ángel Latre (pueden consultarse y reservarse aquí) y el día que se fije para la revisión de los exámenes escritos y prácticos.

Written by profesor

Febrero 8th, 2019 at 8:26 pm

Posted in Sin categoría

Calificaciones del trabajo obligatorio de Pogramación 1

leave a comment

Se han publicado las calificaciones del trabajo obligatorio de Pogramación 1 en este enlace.

Los criterios de evaluación han sido los siguientes:

  • Compilación: es necesario que el código suministrado esté libre de errores de compilación. Los errores relativos a la inclusión de ficheros han sido corregidos por el profesor, pero han penalizado en el apartado «Diseño». Los errores sintácticos que impiden la compilación y ejecución del código tienen como resultado una calificación de 0.
  • Ejecución: tiene un peso del 50%. Se ha comprobado el funcionamiento de distintos aspectos del programa solicitado, que han sido puntuados con 0, ¼, ½, ¾ o 1 punto. Se indica a continuación cuáles son esos aspetos, precedidos por el encabezamiento que tienen en la tabla de calificaciones y el peso que han tenido en el cálculo de la nota de ejecución (nótese que la suma total de los pesos es del 105%):
    • Inicio (5%): correcto inicio de la aplicación según los criterios establecidos en el enunciado (solicitud de opción de ficheros hasta que se elige una opción válida y visualización de la ayuda).
    • f ∄ (5%): correcto comportamiento de la orden «fichero» cuando se elige una opción correspondiente a un conjunto de ficheros que no existe (informar del error y volver a pedir la acción).
    • f 16 (10%): correcto comportamiento de la orden «fichero» cuando se elige la opción «16» y visualización de datos correctos de usos y usuarios. Se ha realizado la prueba con unos ficheros «usos-16.csv» y «usuarios-16.csv» que contienen solo 3 usos y 3 usuarios distintos.
    • f 17 (10%): correcto comportamiento de la orden «fichero» cuando se elige la opción «17» y visualización de datos correctos de usos y usuarios. Se ha realizado la prueba con unos ficheros «usos-17.csv» y «usuarios-17.csv» basados en los ficheros originales «usos-16.csv» y «usuarios-16.csv».
    • f 19 (5%): correcto comportamiento de la orden «fichero» cuando se elige la opción «19» cuando sí que existen unos ficheros denominados «usos-19.csv» y «usuarios-19.csv». Se ha considerado que el funcionamiento correcto es el de admitir la opción e informar del número de usos y usuarios, ya que, aunque no sea una opción ofrecida por el programa, los ficheros sí que existen. Como este aspecto no quedó claramente reflejado en el enunciado, el porcentaje de nota de ejecución asignado a esta parte (5%) es extra (por eso la suma de los pesos es de 105%).
    • ayd (2,5%): correcto comportamiento de la orden «ayuda».
    • inf (20%): correcto comportamiento de la orden «informe» (generación del fichero especificado como argumento, contenido y formato del mismo y datos mostrados en la pantalla), tanto con las opciones de ficheros «16» como «17».
    • usu (15%): correcto comportamiento de la orden «usuario» (se han hecho pruebas con tres usuarios distintos con las opciones de ficheros «16» y «17»).
    • est (25%): correcto comportamiento de la orden «estadisticas» (se han hecho pruebas con las opciones de ficheros «16» y «17»).
    • fin (2,5%): correcto comportamiento de la orden «fin».
    • err (2,5%): correcto comportamiento cuando se escribe una órden no válida.
    • m/M (2,5%): correcto comportamiento cuando se escribe una órden con una combinación inusual de mayúsculas y minúsculas (se probó con la entrada «aYuda»).
  • Diseño: tiene un peso del 50%, se ha puntuado sobre 10 y se han evaluado aspectos como la legibilidad del código (tabulación adecuada, identificadores significativos) así como de diseño (reutilización adecuada de código, ausencia de duplicidades, eficiencia, …).
En la columna «Comentarios» se refleja información complementaria acerca de los apartados anteriores. Es, sin duda, la columna más importante de la tabla de calificaciones, ya que su análisis puede contribuir al estudio de la asignatura y a corregir el programa realizado de cara a su posible utilización en el examen práctico.
La revisión de las calificaciones, así como cualquier clarificación sobre los comentarios realizados se atenderán en horario de tutorías del profesor Miguel Ángel Latre (pueden consultarse y reservarse aquí) y el día que se fije para la revisión de los exámenes escritos y prácticos.
Con respecto a las tutorías, se informa de que, con motivo de la asistencia a una jornada sobre testing, el profesor Miguel Ángel Latre no tendrá tutorías el miércoles 6 de febrero. Estas tutorías se adelantan al martes 5 de febrero, en el mismo horario de 16:30 a 18:00.
Las calificaciones de la prueba voluntaria 2 se harán públicas próximamente y, dado que el diseño del código correspondiente ha sido evaluado con el trabajo obligatorio, la nota se basará exclusivamente en la ejecución.

Written by profesor

Febrero 4th, 2019 at 7:16 pm

Posted in Sin categoría

Publicación de la primera convocatoria de examen

leave a comment

Se ha publicado la primera convocatoria de examen de la asignatura en la página web de la EINA: http://intraneteina.unizar.es/intraneteina/index.php?r=convocatorias/view&id=6259.

Se pueden encontrar detalles adicionales en la web de la asignatura: http://webdiis.unizar.es/asignaturas/PROG1/?page_id=2472.

Así mismo, se recuerda que la fecha y hora límites para la entrega del trabajo obligatorio es hoy, 18 de enero, a las 20:00, tal y como se indica en el enunciado del trabajo.

Written by profesor

Enero 18th, 2019 at 1:49 pm

Posted in Sin categoría

Calificaciones de la 1.ª prueba voluntaria de evaluación

leave a comment

Se han publicado las calificaciones de la 1.ª prueba voluntaria de evaluación en este enlace.

Los criterios de evaluación han sido los siguientes:

  • Compilación: es necesario que el código suministrado esté libre de errores de compilación. Los errores relativos a la inclusión de ficheros han sido corregidos por el profesor, pero han penalizado en el apartado «Diseño». Los errores sintácticos que impiden la compilación y ejecución del código tienen como resultado una calificación de 0.
  • Ejecución: tiene un peso del 50%. Se ha comprobado el funcionamiento de las siguientes funciones (cada una con un peso relativo de 1/3, puntuada sobre 10):
    • Función «diaSemana»: se ha comprobado que la función «diaSemana» devuelve los resultados correctos para todas las fechas comprendidas entre el 1-1-1900 y el 1-1-2101, ambas inclusive. Se ha tenido en cuenta la codificación establecida en el enunciado para los días de la semana y que una implementación errónea pero trivial puede dar el resultado correcto en 1/7 de las ocasiones.
    • Función «diaSiguiente»: se ha comprobado que la función «diaSiguiente» devuelve los resultados correctos para todas las fechas comprendidas entre el 1-1-1900 y el 1-1-2101, ambas inclusive.
    • Función «main»: se ha ejecutado y comprobado que escribe en la pantalla los resultados correctos y que la interacción con el usuario es la establecida en el enunciado.
  • Diseño: tiene un peso del 50%, se ha puntuado sobre 10 y se han evaluado aspectos como la legibilidad del código (tabulación adecuada, identificadores significativos) así como de diseño (reutilización adecuada de código, ausencia de duplicidades, eficiencia, …).
En la columna «Comentarios» se refleja información complementaria acerca de los apartados anteriores. Es, sin duda, la columna más importante de la tabla de calificaciones.
La revisión de las calificaciones, así como cualquier clarificación sobre los comentarios realizados se atenderán en horario de tutorías (pueden consultarse aquí y aquí).

Written by profesor

Diciembre 26th, 2018 at 11:59 pm

Posted in Sin categoría

Pruebas voluntarias del grupo de tarde

leave a comment

Segunda prueba voluntaria para el grupo de tarde.

  • Se ha publicado el enunciado de la 2.ª prueba voluntaria para el grupo de tarde. Puede consultarse aquí.
  • El plazo para su presentación finaliza el domingo 10 de diciembre a las 24 horas.

Tercera y última prueba voluntaria para el grupo de tarde.

Written by profesor

Diciembre 2nd, 2017 at 2:58 pm

Posted in Sin categoría

Realización de pruebas en la práctica 3.ª

leave a comment

El trabajo de desarrollo de un programa no concluye hasta que se han realizado las pruebas necesarias para validar su buen comportamiento. En la práctica 3.ª, sería necesario hacer pruebas de las funciones de los módulos «calculos» y «fechas» y de los programas «PruebaCalculos» y «PruebaFechas».

Las funciones de los módulos «calculos» y «fechas» pueden probarse indirectamente a través de los programas «PruebaCalculos» y «PruebaFechas». Sin embargo, también es posible hacer pruebas directamente sobre las mismas, a través de un programa o programas específicos que realicen invocaciones a las funciones y comprueben los resultados obtenidos.

En la carpeta correspondiente a la práctica 3, en la web  de la asignatura, encontrarás los ficheros «pruebas.cc», «pruebas.h» y «pruebasMain.cc», que puedes incluir en un proyecto de pruebas en CodeLite en el área de trabajo “biblioteca”, junto con los ficheros necesarios de los módulos «calculos» y «fechas». Con esta herramienta, podrás  validar parcialmente el trabajo que hayas desarrollado con respecto a esos dos módulos y, en su caso, detectar y corregir errores. En todo caso, que el programa de pruebas no detecte errores no es garantía de que no los haya.

Written by profesor

Noviembre 6th, 2017 at 10:00 am

Posted in Sin categoría

Cambios en el horario de las clases en el grupo de tarde

leave a comment

Con motivo de un viaje de trabajo del profesor Miguel Ángel Latre entre el 13 y 16 de noviembre, se van a realizar los siguientes cambios en el horario del grupo de tarde:

  • Miércoles, 8 de noviembre:
    • Habrá dos horas de clase de Programación 1, de 18:10 a 20:00
    • No habrá clase de teoría de Introducción a los computadores de 19:10 a 20:00
  • Martes, 14 de noviembre:
    • No habrá clase de teoría de Programación 1 de 17:10 a 18:00
    • Habrá dos horas de clase de Introducción a los Computadores, de 17:10 a 19:00
  • Miércoles, 15 de noviembre:
    • No habrá clase de Programación 1 de 18:10 a 19:00
    • La clase de Introducción a los Computadores se adelantará de 18:10 a 19:00
  • Jueves, 16 de diciembre noviembre:
    • Las clases de problemas de Introducción a los Computadores y Programación 1 se impartiran en sus horarios y ubicaciones habituales. Las de Programación 1 serán impartidas por el profesor Javier Martínez.
  • Martes, 21 de noviembre:
    • Además de la hora habitual de Programación 1 de 17:10 a 18:00, se impartirá otra de 19:10 a 20:00.
    • La clase de Introducción a los Computadores se impartirá un su horario habitual de 18:10 a 19:00.

El resto de clases teóricas y las de prácticas no sufren ningún cambio. Disculpad las molestias.

Written by profesor

Octubre 31st, 2017 at 5:00 pm

Posted in Sin categoría

Cambios en el horario de las clases en el grupo de tarde

leave a comment

Con motivo de un viaje de trabajo, el profesor del grupo de tarde Miguel Ángel Latre estará ausente entre los días 29 de noviembre y 2 de diciembre. Por tanto, no habrá clases de teoría de los días 29 y 30 de noviembre. Dichas clases se recuperarán los siguientes días:

  • Miércoles, 23 de noviembre, de 19:10 a 20:00
  • Miércoles, 14 de diciembre, de 19:10 a 20:00

Las clases de problemas del día 1 de diciembre serán impartidas en el horario habitual por el profesor Javier Martínez, así como la sesión de prácticas del martes A, 29 de noviembre, que será impartida por el profesor Alfredo Roy.

Written by profesor

Noviembre 18th, 2016 at 9:07 pm

Posted in Sin categoría

Realización de pruebas en la práctica 3.ª

leave a comment

El trabajo de desarrollo de un programa no concluye hasta que se han realizado las pruebas necesarias para validar su buen comportamiento. En la práctica 3.ª, sería necesario hacer pruebas de las funciones de los módulos «calculos» y «fechas» y de los programas «PruebaCalculos» y «PruebaFechas».

Las funciones de los módulos «calculos» y «fechas» pueden probarse indirectamente a través de los programas «PruebaCalculos» y «PruebaFechas». Sin embargo, también es posible hacer pruebas directamente sobre las mismas, a través de un programa o programas específicos que realicen invocaciones a las funciones y comprueben los resultados obtenidos.

En la carpeta correspondiente a la práctica 3, en la web  de la asignatura, encontrarás los ficheros «pruebas.cc», «pruebas.h» y «pruebasMain.cc», que puedes incluir en un proyecto de pruebas en CodeLite en el área de trabajo “biblioteca”, junto con los ficheros necesarios de los módulos «calculos» y «fechas». Con esta herramienta, podrás  validar parcialmente el trabajo que hayas desarrollado con respecto a esos dos módulos y, en su caso, detectar y corregir errores. En todo caso, que el programa de pruebas no detecte errores no es garantía de que no los haya.

Written by profesor

Noviembre 7th, 2016 at 5:33 pm