Guía docente de Programación (2951115)

Curso 2023/2024
Fecha de aprobación: 27/06/2023

Grado

Grado en Matemáticas y 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

José Luis Bernier Villamor. Grupo: A

Tutorías

José Luis Bernier Villamor

Email
  • Primer semestre
    • Lunes de 10:00 a 13:00 (Etsiit D.2-27)
    • Viernes de 10:00 a 13:00 (Etsiit D.2-27)
  • Segundo semestre
    • Martes de 10:00 a 13:00 (Etsiit D.2-27)
    • Miércoles de 10:00 a 13:00 (Etsiit D.2-27)

Prerrequisitos y/o Recomendaciones

  • Es recomendable haber cursado asignaturas de matemáticas e informática en el bachillerato.

Breve descripción de contenidos (Según memoria de verificación del Máster)

  • Sistemas operativos
  • Lenguajes de programación
  • Librerías informáticas científicas
  • Aplicaciones a problemas científicos

Competencias

Competencias Generales

  • 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
    • El objeto string
    • 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. Práctica de control. Funciones y matrices.
  • Práctica 9. Bibliotecas de funciones matemáticas.
  • Práctica 10. La depuración de programas. Almacenamiento externo y flujos de E/S

Bibliografía

Bibliografía fundamental

BIBLIOGRAFÍA FUNDAMENTAL:

  • Cuaderno de Programación (4ª edición). Jose Luis Bernier Villamor y Luis Javier Herrera Maldonado. Librería Fleming, 2022.
  • Problemas de Programación (4ª edición). Jose Luis Bernier Villamor. Editorial Técnica Avicam (Librería Fleming), 2023.

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

LIBROS Y OTROS DOCUMENTOS TEXTUALES ONLINE

TUTORIALES Y CURSOS ONLINE

SOFTWARE

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 asistencia a las clases de teoría es recomendable.
  • La asistencia a las clases de prácticas y seminarios forma parte de la calificación, puesto que constan de ejercicios que han de resolverse en presencia de los profesores.
  • La evaluación se realizará de forma continua a partir las prácticas (la parte de laboratorio más la realizada en casa), así como de los exámenes en los que los estudiantes tendrán que demostrar las competencias adquiridas.
  • La nota de prácticas se calcula a partir del trabajo realizado presencialmente en el laboratorio (prácticas de laboratorio y talleres) junto con la parte correspondiente realizada en casa (ejercicios propuestos para casa). Ambas partes están relacionadas entre sí, y forman un todo en cada sesión. Sólo se diferencia que una parte es la que se realiza en el horario oficial, y la otra, para completar a la anterior, se realiza en horario de estudio de la asignatura.
  • 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

>=5

0,5*nota_examen + 0,5*nota_practicas

(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 guarda la calificación de prácticas de un año para otro.
    • 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 Extraordinaria

  • En la convocatoria extraordinaria la calificación final se computará como:
Calificación en el examen Calificación final

< 5

nota_examen

>=5

máximo (nota_examen; 0,75*nota_examen + 0,25*nota_practicas)

(en ningún caso se aprobará la asignatura con una calificación en el examen extraordinario inferior a 5).

Evaluación única final

  • Excepcionalmente, según la “Normativa de evaluación y de calificación de los estudiantes de la Universidad de Granada”, aquellos estudiantes que no puedan acogerse a la evaluación continua pueden solicitar ante el director del departamento acogerse a una evaluación única, siempre que lo notifiquen en el plazo correspondiente y de forma justificada.
  • La evaluación única consistirá en un examen de la asignatura, que tendrá un peso del 100% sobre la nota final.

Información adicional

  • 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.