Guía docente de Programación (2671117)
Curso
2026/2027
Fecha de aprobación:
06/07/2026
Grado
Grado en Física
Rama
Ciencias
Módulo
Métodos Matemáticos y Programación
Materia
Programación
Curso
1
Semestre
1
Créditos
6
Tipo
Troncal
Profesorado
Teórico
- Eusebio Naif Al-Soliman Fuentes. Grupo: C
- José Luis Bernier Villamor. Grupos: A y B
Práctico
- José Luis Bernier Villamor Grupos: 1, 2, 3 y 4
- Luis Javier Herrera Maldonado Grupos: 4, 5 y 6
- Samuel Francisco Romero García Grupo: 7
- Claudia Villalonga Palliser Grupos: 8 y 9
Tutorías
Eusebio Naif Al-Soliman Fuentes
Ver emailNo hay tutorías asignadas para el curso académico.
José Luis Bernier Villamor
Ver emailNo hay tutorías asignadas para el curso académico.
Luis Javier Herrera Maldonado
Ver emailNo hay tutorías asignadas para el curso académico.
Samuel Francisco Romero García
Ver emailNo hay tutorías asignadas para el curso académico.
Claudia Villalonga Palliser
Ver emailNo hay tutorías asignadas para el curso académico.
Prerrequisitos y/o Recomendaciones
- Es recomendable haber cursado asignaturas de matemáticas e informática en el bachillerato.
- En el caso de utilizar herramientas de IA para el desarrollo de la asignatura, el estudiante debe adoptar un uso ético y responsable de las mismas:
- Qué se puede hacer: usar la IA como una fuente de información o de conocimiento.
- Qué no se puede hacer:
- Limitarse a copiar.
- Copiar soluciones generadas por la IA sin entenderlas.
- Copiar soluciones sin comprobar su corrección.
- Copiar soluciones sin adaptarlas al lenguaje C++ expuesto en el temario.
- Copiar soluciones sin adaptarlas a los conceptos, herramientas, recursos o habilidades concretas expuestas en la asignatura, y que se están tratando de evaluar mediante los ejercicios a resolver.
Breve descripción de contenidos (Según memoria de verificación del Grado)
- Sistemas operativos
- Lenguajes de programación
- Librerías informáticas científicas
- Aplicaciones a problemas científicos
Competencias
General competences
- CG01. Capacidad de análisis y síntesis
- CG02. Capacidad de organización y planificación
- CG04. Conocimientos de informática relativos al ámbito de estudio
- CG06. Resolución de problemas
- CG08. Razonamiento crítico
- CG11. Iniciativa y espíritu emprendedor
Competencias Específicas
- CE08. Utilizar herramientas informáticas para resolver y modelar problemas y para presentar sus resultados.
Resultados de aprendizaje (Objetivos)
- Aprender a usar herramientas informáticas
- Aprender a programar en un lenguaje relevante para el cálculo científico
Programa de contenidos Teóricos y Prácticos
Teórico
TEMARIO TEÓRICO:
- BLOQUE 1. Introducción.
- Concepto de sistema informático
- Arquitectura básica de un computador
- El sistema operativo
- La programación de ordenadores
- El lenguaje de programación C++: sintaxis básica
- BLOQUE 2. Programación básica I
- Tipos de datos simples
- Instrucciones de E/S
- Control de flujo
- Funciones
- Resolución de problemas de cálculo acumulado
- BLOQUE 3. Programación básica II
- Arrays
- Recursividad
- Búsqueda y ordenación
- Resolución de problemas algebraicos y numéricos
- BLOQUE 4. Programación avanzada
- Clases y objetos
- Instanciación, propiedades y métodos
- La clase string: cadenas de caracteres
- La clase fstream: archivos y flujos de E/S
- Abstracción de elementos matemáticos complejos
Práctico
TEMARIO PRÁCTICO:
Talleres/Seminarios
- Acceso a los laboratorios y otros recursos para estudiantes en la UGR
- Descripción de algoritmos mediante diagramas de flujo
- Redes Neuronales Artificiales y Aprendizaje Profundo
Prácticas de Laboratorio
- PRÁCTICA 1. El entorno de programación I. Primeros programas.
- PRÁCTICA 2. El entorno de programación II. Funciones matemáticas habituales.
- PRÁCTICA 3. Las ayudas contextuales. Números aleatorios.
- PRÁCTICA 4. Corrección de errores. Bucles y estructuras de control selectivo.
- PRÁCTICA 5. Programación modular I. Programación de rutinas matemáticas y series numéricas.
- PRÁCTICA 6. Programación modular II. Programación eficiente de rutinas matemáticas.
- PRÁCTICA 7. Tipos de datos compuestos. Cálculo matricial.
- PRÁCTICA 8. Funciones y arrays.
- PRÁCTICA 9. La depuración de programas. Cadenas de caracteres.
- PRÁCTICA 10. Archivos y flujos de E/S
Bibliografía
Bibliografía fundamental
BIBLIOGRAFÍA FUNDAMENTAL:
- Cuaderno de Programación (6ª edición). Jose Luis Bernier Villamor y Luis Javier Herrera Maldonado. Editorial Técnica Avicam (Librería Fleming), 2026.
- Problemas de Programación (5ª edición). Jose Luis Bernier Villamor. Editorial Técnica Avicam (Librería Fleming), 2025.
Bibliografía complementaria
- Fundamentos de la Programación con la STL. Antonio Garrido Carrillo. Editorial Universidad de Granada, 2016.
- Metodología de la Programación. Antonio Garrido Carrillo. Editorial Universidad de Granada, 2016.
- Programación en C++ para ingenieros (2ª edición). Fatps Xhafa, P. Vázquez Alcocer y otros. Thomson, 2006.
- Problemas resueltos de programación en lenguaje C++. J.D. García Sánchez, J.M. Pérez Menor y otros. Thomson, 2004.
- Programación en C++. Luis Joyanes Aguilar. McGraw- Hill Serie Schaum, 2006.
- Cálculo científico con MatLab y Octave. Alfio Qarteroni, Fausto Saleri. Springer Verlag, 2006.
- Fortran 90/95 for Scientists and Engineers. Stephen Chapman. McGraw-Hill, 2003.
- Introducción a la Informática (4a edición). A. Prieto, A. Lloris, J.C. Torres. McGraw-Hill, 2005
Enlaces recomendados
INFORMACIÓN SOBRE LA ASIGNATURA Y MATERIALES DE APOYO ESPECÍFICOS
- Página web de la asignatura en la plataforma SWAD: http://swad.ugr.es
- Página web del título de Grado en Física: http://grados.ugr.es/fisica
- Página web de la Facultad de Ciencias: http://fciencias.ugr.es
LIBROS Y OTROS DOCUMENTOS TEXTUALES ONLINE
- C++ para Ingeniería y Ciencias (2ª edición). G. J. Bronson. Thomson, 2006: http://books.google.com
- Numerical recipes (the art of scientific computing): http://numerical.recipes/
TUTORIALES Y CURSOS ONLINE
- Videocurso Fundamentos de Informática del profesor Alberto Prieto Espinosa. Youtube:
- Curso de Programación en C++. Programación ATS (videocurso en youtube):
- Referencia de C y C++: http://www.cppreference.com
- C++ con clase: http://c.conclase.net
- The C++ Resources Network: http://www.cplusplus.com
SOFTWARE
- Entorno de programación Code::Blocks: http://www.codeblocks.org/
- Entorno de programación CodeLite: http://www.codelite.org/
- GNU Fortran: http://gcc.gnu.org/fortran
- Octave: http://www.gnu.org/software/octave/
Metodología docente
- MD01. Lección magistral/expositiva
Evaluación (instrumentos de evaluación, criterios de evaluación y porcentaje sobre la calificación final)
Evaluación Ordinaria
- La evaluación de la asignatura se realizará de forma continua a partir de las calificaciones de prácticas, así como del examen final en el que los estudiantes tendrán que demostrar las competencias adquiridas.
- La asistencia a las clases de grupo amplio (teoría y problemas) no es obligatoria, pero sí recomendable.
- La asistencia a las clases de grupo reducido (sesiones de prácticas y seminarios) es obligatoria:
- Los seminarios son clases en grupo reducido donde el profesor expone algún tema relacionado transversalmente con la asignatura.
- En cada seminario se evalúa:
- Asistencia (50%)
- Evaluación de ejercicios propuestos en el seminario (50%).
- En cada seminario se evalúa:
- Las sesiones de prácticas son clases en grupo reducido donde, a partir de un guión, que se proporciona con antelación a los estudiantes, éstos deberán seguirlo durante la sesión con algún ejercicio de ejemplo. En algunas de las sesiones de prácticas el estudiante deberá resolver uno o más ejercicios de un conjunto propuesto previamente por los profesores (ejercicios de control).
- Es necesario preparar semanalmente cada guión de prácticas así como el conjunto de ejercicios de control propuesto en las horas de estudio correspondientes.
- Cada sesión de prácticas constará de una o más de las siguientes partes:
- Test con preguntas sobre el guión de la práctica a realizar y los conceptos relacionados con la misma explicados en clase.
- Desarrollo y comprensión del guión.
- Resolución de ejercicios de control.
- Los seminarios son clases en grupo reducido donde el profesor expone algún tema relacionado transversalmente con la asignatura.
- Las prácticas se organizan en tres bloques, donde cada uno consta de varias sesiones:
- Bloque 1: 1 seminario (10%) + 4 sesiones de prácticas (90%)
- Bloque 2: 1 seminario (10%) + 4 sesiones de prácticas (90%)
- Bloque 3: 1 seminario (10%) + 2 sesiones de prácticas (90%)
- A su vez, el peso sobre la calificación de prácticas de cada uno de estos bloques de prácticas es:
- Bloque 1 (40%)
- Bloque 2 (40%)
- Bloque 3 (20%)
- El examen final de la asignatura, tanto en la convocatoria ordinaria como en la extraordinaria, se realizará por escrito y consistirá en la resolución de diversos problemas de programación de dificultad similar a los realizados durante el curso, y abarcará la totalidad de los contenidos expuestos en la asignatura.
- La superación de cualquiera de las pruebas no se logrará sin un conocimiento uniforme y equilibrado de toda la materia. Por ello, la calificación final se calculará de la siguiente manera en la convocatoria ordinaria:
| Calificación en el examen | Calificación final |
|
< 5 |
nota_examen (100%) |
|
>=5 |
nota_examen (50%) + nota_practicas (50%) |
(en ningún caso se aprobará la asignatura con una calificación en el examen ordinario inferior a 5).
- Dado que se usa evaluación continua:
- No es posible recuperar/realizar las prácticas fuera del calendario lectivo de clases.
- No se guardan la calificaciones de prácticas obtenidas en cursos anteriores.
- En el caso de no poder realizar las prácticas o no querer repetirlas, en su caso, y siempre que se justifique adecuadamente, podrá solicitarse la Evaluación Única siguiendo la normativa y directrices pertinentes.
- Evaluación por incidencias: los estudiantes que no puedan concurrir a las pruebas finales de evaluación o a las programadas en la Guía Docente con fecha oficial, por alguna de las circunstancias recogidas en el artículo 9 de la Normativa de evaluación y de calificación de los estudiantes de la Universidad de Granada, siguiendo el procedimiento indicado en dicha normativa.
Evaluación Extraordinaria
- En la convocatoria extraordinaria la calificación final se computará como:
| Calificación en el examen | Calificación final |
|
< 5 |
nota_examen (100%) |
|
>=5 |
Máximo de considerar: - nota_examen (100%) - nota_examen (75%) + nota_practicas (25%) |
(en ningún caso se aprobará la asignatura con una calificación en el examen extraordinario inferior a 5).
Evaluación única final
- De acuerdo con la Normativa de Evaluación y de Calificación de los Estudiantes de la UGR, se contempla la realización de una evaluación única final a la que podrán acogerse aquellos estudiantes que no puedan cumplir con el método de evaluación continua por algunos de los motivos recogidos en el Artículo 8. Para acogerse a la evaluación única final, el estudiante, en las dos primeras semanas de impartición de la asignatura, en las dos semanas siguientes a su matriculación si ésta se ha producido con posterioridad, o más tarde si hay causa sobrevenida, lo solicitará a través de la sede electrónica, alegando y acreditando las razones que le asisten para no poder seguir el sistema de evaluación continua.
- La evaluación única constará de dos pruebas:
- Examen de la asignatura, similar al de la convocatoria correspondiente a la que se presente (75 %).
- Prueba de laboratorio, a realizar con ordenador y con ejercicios relacionados con las sesiones de prácticas (25 %).
Información adicional
- Alumnos con necesidades específicas de apoyo educativo (NEAE)
- Siguiendo las recomendaciones de la CRUE y del Secretariado de Inclusión y Diversidad de la UGR, los sistemas de adquisición y de evaluación de competencias recogidos en esta guía docente se aplicarán conforme al principio de diseño para todas las personas, facilitando el aprendizaje y la demostración de conocimientos de acuerdo a las necesidades y la diversidad funcional del alumnado. La metodología docente y la evaluación serán adaptadas al alumnado con NEAE, conforme al Artículo 11 de la Normativa de Evaluación y de Calificación de estudiantes de la UGR, publicada en el Boletín Oficial de la UGR nº 112, de 9 de noviembre de 2016.
- Inclusión y Diversidad de la UGR
- En el caso de estudiantes con discapacidad u otras NEAE, el sistema de tutoría deberá adaptarse a sus necesidades, de acuerdo a las recomendaciones de la Unidad de Inclusión de la UGR, procediendo los Departamentos y Centros a establecer las medidas adecuadas para que las tutorías se realicen en lugares accesibles. Asimismo, a petición del profesorado, se podrá solicitar apoyo a la unidad competente de la Universidad cuando se trate de adaptaciones metodológicas especiales.
Software Libre
- Code::Blocks: https://www.codeblocks.org/
- MinGW: https://sourceforge.net/projects/mingw/
- Apache OpenOffice: https://www.openoffice.org/es/