Esta versión de la guía docente es provisional hasta que no finalize el periodo de edición de las guías del nuevo curso.

Logo UAB

Programación Científica

Código: 107925 Créditos ECTS: 6
2025/2026
Titulación Tipo Curso
Matemáticas FB 1

Contacto

Nombre:
Francesc Xavier Xarles Ribas
Correo electrónico:
xavier.xarles@uab.cat

Equipo docente

Jaume Coll Guerrero
Joaquim Roé Vellvé
Marc Masdeu Sabate

Idiomas de los grupos

Puede consultar esta información al final del documento.


Prerrequisitos

Ninguno


Objetivos y contextualización

Familiarizarse con el uso de un manipulador algebraico. Este manipulador debe convertirse en una herramienta habitual en el estudio de muchas otras asignaturas.

Iniciarse en la programación de ordenadores, en los aspectos más relevantes para la computación científica.

Entender el funcionamiento del ordenador, en los aspectos más relevantes para la programación.

Aprender a programa en Python y C.

 


Resultados de aprendizaje

  1. CM05 (Competencia) Discriminar, entre distintos algoritmos, el más pertinente para resolver un problema matemático elemental.
  2. KM08 (Conocimiento) Identificar algunos algoritmos de cálculo básicos.
  3. KM09 (Conocimiento) Enumerar los principios matemáticos fundamentales de la programación.
  4. KM10 (Conocimiento) Describir los principios del funcionamiento del ordenador en los aspectos más relevantes para la programación, incluyendo componentes, memoria, procesamiento y entrada/salida.
  5. SM07 (Habilidad) Utilizar un programa de cálculo simbólico en la resolución de problemas sencillos de otras ramas de las matemáticas, como el álgebra, la geometría o la teoría de grafos.
  6. SM08 (Habilidad) Programar algoritmos sencillos.

Contenido

 

Primera parte: Python y Sagemath

- Números, cadenas y variables.
- Listas, conjuntos y comprensión.
- Condicionales.
- Iteradores y range.
- Tuplas y diccionarios.
- Funciones y programas.
- Recursividad.
- Control de errores.
- Diseño y análisis de algoritmos.
- Números enteros y congruencias.
- Cálculos numéricos y algebraicos.
- Gráficas de funciones.
- Resolución de ecuaciones.
- Objetos y Clases.
- Vectores y matrices.

Segunda Parte: C

- Lenguajes compilados. Código fuente y programa ejecutable.
- Estructuras de los programas en C: iterativa, alternativa, funciones.
- Codificación de la información. Tipo de variables y constantes.
- Vectores y tipos derivados.
- Gestión de la memoria. Apuntadores.
- Entrada y salida: interacción por consola y archivos.
- Bibliotecas.


Actividades formativas y Metodología

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
C 30 1,2 CM05, KM08, KM09, KM10, SM07, SM08, CM05
Python y Sagemath 26 1,04 CM05, KM08, KM09, KM10, SM07, SM08, CM05
Tipo: Autónomas      
Preparación examen de C 20 0,8 CM05, KM08, KM09, KM10, SM07, SM08, CM05
Preparación examen de Pyhton y Sagemath 20 0,8 CM05, KM08, KM09, KM10, SM07, SM08, CM05
Trabajo 40 1,6 CM05, KM08, KM09, KM10, SM07, SM08, CM05

Habrá 13 sesiones de prácticas en el primer semestre y 15 sesiones en el segundo, de dos horas de duración cada sesión.

El alumnado podrán comunicarse con los profesores a través del correo electrónico para temas de índole personal, enviado siempre desde la dirección institucional @autonoma.cat. Para temas de interés generan (consultas sobre la materia, organización de la asignatura, etcétera), se deberá usar los fórums del Aula Moodle.

En todos los aspectos de las actividades de enseñanza / aprendizaje se harán los mejores esfuerzos por parte del profesorado y el alumnado para evitar lenguaje y situaciones que puedan ser interpretados como sexistas. Con el fin de conseguir una mejora continua en este tema, todo el mundo debe colaborar en poner de manifiesto las desviaciones que observe respecto de este objetivo.

Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.

Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.


Evaluación

Actividades de evaluación continuada

Título Peso Horas ECTS Resultados de aprendizaje
Examen de C 0,33 4 0,16 CM05, KM08, KM09, KM10, SM07, SM08
Examen de Python y Sagemath 0,33 4 0,16 CM05, KM08, KM09, KM10, SM07, SM08
Trabajo 0'33 6 0,24 CM05, KM08, KM09, KM10, SM07, SM08

La asignatura tiene tres evaluaciones:

  • durante el primer semestre del curso se realizará una o más pruebas de la parte de Python y Sagemath.
  • durante el segundo semestre del curso se realizará una prueba de la parte de C, además de entregas de algunos ejercicios prácticos.
  • un trabajo de programación, que contendrá una explicación escrita en Latex, con partes del código escritas con Python y partes con escritas con C.

La nota final de la asignatura será la suma ponderada de las notas de cada una de las tres partes. Cada parte contribuye a un tercio de la nota global.

Existe una nota mínima de cada una de las partes de 3,5 puntos sobre 10. Por lo tanto, para aprobar la asignatura es obligatorio sacar más de un 3,5 en cada una de las tres partes, además de tener un 5 o más de media.

De cada uno de los exámenes habrá una segunda convocatoria para recuperar/mejorar la nota. La entrega de este segundo examen anulará automáticamente la nota de la primera convocatoria. El trabajo no es recuperable.

Se considerará evaluable quien haya presentado trabajos o haya realizado exámenes por un total de al menos dos tercios de la asignatura. En caso contrario constará en el acta como No Evaluable.

Para la asignación de Matrículas de Honor no se tendrá en cuenta las notas de las segundas convocatorias.

MUY IMPORTANTE: Los trabajos evaluables son individuales. Copiar o dejar copiar total o parcialmente un trabajo evaluable o un examen se penalizará con un cero como nota final de la asignatura.


Bibliografía

Durante el curso se proporcionará el material imprescindible para seguirlo. Como material adicional, recomendamos:

SAGE. http://www.sagemath.org/help.html

Tobias Oetiker, Hubert Partl, Irene Hyna and Elisabeth Schlegl. The not so short introduction to LaTeX 2e. Tobi.oetiker.ch/lshort/lshort.pdf

George Grätzer, More Math Into LaTeX, Springer, 2016

CProgramming. http://www.cprogramming.com/tutorial/c-tutorial.html (La cantidad de tutoriales sobre lenguaje C en internet y en forma de libro es enorme, y en diversidad de idiomas)

B.W. Kernighan, Ritchie, D.M., The C programming language. 2nd edition. 1988


Software

 En esta asignatura se utiliza SageMath, Pyhton, Latex y C. Durante el curso se darán instrucciones para su correcta instalación, así como de posibles editores. 

 


Grupos e idiomas de la asignatura

La información proporcionada es provisional hasta el 30 de noviembre de 2025. A partir de esta fecha, podrá consultar el idioma de cada grupo a través de este enlace. Para acceder a la información, será necesario introducir el CÓDIGO de la asignatura

Nombre Grupo Idioma Semestre Turno
(PLAB) Prácticas de laboratorio 1 Catalán anual manaña-mixto
(PLAB) Prácticas de laboratorio 2 Catalán anual manaña-mixto
(PLAB) Prácticas de laboratorio 3 Catalán anual manaña-mixto
(PLAB) Prácticas de laboratorio 4 Catalán anual manaña-mixto