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 1

Código: 107888 Créditos ECTS: 6
2025/2026
Titulación Tipo Curso
Ingeniería Informática FB 1

Contacto

Nombre:
Roberto Benavente Vidal
Correo electrónico:
robert.benavente@uab.cat

Equipo docente

Francesc Xavier Roca Marva
Albert Gil Lopez
Cristobal Pio Garcia

Idiomas de los grupos

Puede consultar esta información al final del documento.


Prerrequisitos

Dado que la asignatura es de introducción, se asumirá que no se posee ningún tipo de conocimiento previo sobre la materia.

Sin embargo, es recomendable tener conocimientos a nivel de usuario de algún tipo de plataforma (Windows, Mac o Linux).

En las actividades presenciales en el aula es imprescindible disponer de un ordenador portátil para realizar las tareas de la asignatura.

 


Objetivos y contextualización

Esta asignatura tiene un carácter general e introductorio en la programación. Se profundizará en el estudio de los aspectos metodológicos de la programación y el aprendizaje de un lenguaje de alto nivel. Por tanto, los objetivos generales que se proponen son los siguientes:

  • Entender el ciclo de vida del software: análisis del problema (entender lo que se nos pide), diseño (proponer una solución al problema), implementación (codificación en un lenguaje de programación de la solución escogida), prueba (realización de un test de forma sistemática para asegurar la corrección de la solución implementada).
  • Dotar al estudiante de la capacidad de diseño de algoritmos para la resolución de problemas, introduciendo de forma progresiva y sistemática una metodología rigurosa y estructurada de programación, basada fundamentalmente en la técnica del diseño descendente de algoritmos.
  • Introducir al estudiante en un lenguaje de programación real. Se pretende que el estudiante perciba la diferencia entre la flexibilidad de la notación pseudo-algorísmica que se emplea en los primeros temas y la estricta sintaxis de un lenguaje de programación real, tanto en sus aspectos léxicos (palabras válidas del lenguaje), sintácticos (reglas para combinarlas) y semánticos (significado de las mismas).
  • Habituar al estudiante a desarrollar programas siguiendo unas normas de estilo tendentes a conseguir programas de calidad. Dentro de estas normas de estilo se engloban aquéllas que facilitan la compresión del código, como pueden ser el uso de comentarios, la indentación del código, la utilización de nombres adecuados para los tipos de datos, etc.

 


Resultados de aprendizaje

  1. CM04 (Competencia) Validar las soluciones propuestas a problemas del ámbito de la informática en función de sus requisitos y atendiendo a las condiciones establecidas
  2. KM06 (Conocimiento) Identificar los conceptos básicos de la programación estructurada, modular y orientada a objetos, así como las herramientas y entornos de desarrollo para la creación de software de calidad
  3. KM07 (Conocimiento) Identificar los tipos de datos simples y las estructuras de datos complejas de los lenguajes de programación de alto nivel, así como su almacenamiento en memoria
  4. SM09 (Habilidad) Analizar las necesidades de programación de un sistema informático desde el punto de vista de la necesidad del cliente
  5. SM10 (Habilidad) Utilizar herramientas para el análisis, diseño, codificación y depuración de programas
  6. SM11 (Habilidad) Desarrollar software de pequeña o mediana complejidad para resolver problemas utilizando programación estructurada y orientada a objetos
  7. SM12 (Habilidad) Demostrar habilidades para trabajar cooperativamente en el desarrollo de aplicaciones informáticas

Contenido

Tema 1: Introducción a la informática

Historia. Estructura funcional del ordenador. Niveles conceptuales del ordenador.

Tema 2: Resolución de problemas: introducción a la algorítmica y la programación.

Introducción a la resolución de problemas. Concepto de algoritmo. Fases en el desarrollo de algoritmos. La programación como disciplina de ingeniería. Ciclo de vida del software. Elementos básicos de un algoritmo. Herramientas para la representación de algoritmos. Lenguajes de programación. Clasificación. Traductores de lenguajes: Compiladores e intérpretes.

Tema 3: Conceptos básicos y estructuras de control

Tipo de datos simples. Definición de variables y constantes. Estructura Secuencial. Estructuras condicionales. Estructuras iterativas o repetitivas.

Tema 4: Subprogramas. Procedimientos y funciones

El concepto de subprograma como abstracción de operaciones. Localidad, anidamiento, ámbito y visibilidad. Definición de funciones. Llamadas a funciones. Declaración o prototipo de funciones. Tipo de argumentos: de entrada, de salida, de entrada / salida. Paso de argumentos a funciones: por valor y por referencia.

Tema 5: Tipos de datos complejos

Tipo array. Arrays unidimensionales. Arrays multidimensionales. Cadenas de caracteres. Registros. Arrays de registros.

 

.


Actividades formativas y Metodología

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
Clases de prácticas 12 0,48 CM04, SM09, SM10, SM11, SM12, CM04
Clases de problemas 12 0,48 CM04, KM07, SM09, SM10, SM11, CM04
Clases de teoria 26 1,04 KM06, KM07, SM10, SM11, KM06
Tipo: Supervisadas      
Resolución de prácticas 25 1 CM04, SM09, SM10, SM11, SM12, CM04
Tipo: Autónomas      
Estudio personal 20 0,8 CM04, KM06, KM07, SM09, SM10, SM11, CM04
Preparación de clases 20 0,8 KM06, KM07, KM06
Resolución de problemas 25 1 CM04, SM09, SM10, SM11, CM04

La gestión de la docencia de la asignatura se realizará a través del gestor documental Caronte (http://caronte.uab.cat/), que servirá para poder ver los materiales, gestionar los grupos de prácticas, realizar las entregas correspondientes, ver las notas, comunicarse con el profesorado, etc. Para poder utilizarlo hay que dar los siguientes pasos:

  1. Darse de alta como usuario dando el nombre, NIU, y una foto carné en formato JPG. Si ya se ha dado de alta por alguna otra asignatura, no es necesario volver a hacerlo, puede ir al siguiente paso.
  2. Inscribirse en el curso "Programación 1", dando como código de asignatura el proporcionado el primer día de clase.

En el desarrollo de la asignatura se seguirá la metodología de aula inversa. Esto significa que el alumnado tendrá que trabajar algunos conocimientos antes de las sesiones presenciales en las que principalmente se realizarán actividades prácticas con el objetivo de tratar el máximo de casos posibles para entender la complejidad de lo que implica plantear una solución a un problema de programación.

Antes de clase. Los conceptos básicos se trabajan antes de las sesiones presenciales a partir de los materiales proporcionados con una semana de antelación en la plataforma Caronte. El material a trabajar será documentación escrita, contenido multimedia y actividades de aprendizaje.

Cada estudiante debe prepararse las clases antes de asistir, revisando los materiales tantas veces como sea necesario para asimilar los conceptos. Como orientación, se recomienda dedicar semanalmente un número de horas equivalente al tiempo de clase aproximadamente entre 2 y 3 horas semanalmente. Para cada tema, se propondrá un cuestionario que permitirá evaluar el grado de consecución de los contenidos trabajados

En clase. El objetivo de las sesiones presenciales es pasar de la información al conocimiento. Pondremos el énfasis en crear conocimientos aplicables al análisis y solución de problemas concretos. La estructura de las clases será:

  • Revisión de los conceptos básicos del tema a tratar (15 min). El objetivo es resolver las dudas que puedan existir sobre aspectos teóricos no entendidos y hacer seguimiento de la adquisición de los conceptos básicos.
  • Solución de problemas (resto del tiempo de clase). El objetivo es experimentar realizando una tarea práctica que permita aplicar los conceptos aprendidos para resolver retos y así compartir y crear conocimiento.

Después de Clase. El objetivo es consolidar el conocimiento. En la plataforma Caronte se podrán encontrar un conjunto de problemas evaluables de autocorrección que deben permitir al alumnado profundizar en la comprensión de los temas y personalizar su conocimiento. El hecho de que sea autoevaluable permite adecuar el ritmo de consolidación a cada estudiante y que se produzca una reflexión sobre el propio aprendizaje.

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
Actividades de clase evaluables 10% 0 0 CM04, KM06, KM07, SM09, SM11
Cuestionarios de autoevaluación 5% 6 0,24 KM06, KM07
Examen final 45% 2 0,08 CM04, KM06, KM07, SM09, SM11
Examen intrasemestral 15% 2 0,08 CM04, KM06, KM07, SM09, SM11
Prácticas 15% 0 0 CM04, SM09, SM10, SM11, SM12
Resolución de problemas 10% 0 0 CM04, SM09, SM10, SM11

Actividades de evaluación programadas

La asignatura consta de las siguientes actividades de evaluación: 

Actividad

Tipo

Peso

Nota mínima

Recuperable

Examen intrasemestral

individual

15%

No

Examen final

individual

45%

5

Prácticas

grupal

15%

5

Cuestionarios de autoevaluación

individual

5%

No

No

Resolución de problemas

individual

10%

No

Actividades de clase evaluables

individual

10%

No

No

Para poder aprobar la asignatura, será necesario tener una nota mínima de 5 en el examen final y las prácticas.

 

Programación de actividades de evaluación

El calendario de las actividades de evaluación se dará el primer día de la asignatura y se hará público a través de Caronte y en la web de la Escuela de Ingeniería, en el apartado de exámenes.

 

Proceso de recuperación

El estudiante puede presentarse a la recuperación siempre que se haya presentado a un conjunto de actividades que represente un mínimo de dos terceras partes de la calificación total de la asignatura. En particular si el estudiante no se ha presentado en el examen final no podrá realizar el examen de recuperación

El examen final podrá recuperarse en la fecha fijada por la coordinación del Grado. En caso de realizar el examen de recuperación, la nota de este examen también podrá sustituir ala notadel examen intrasemestral si la nota de la recuperación es superior a la nota del intrasemestral.

Las prácticas se podrán recuperar en una segunda entrega en la fecha fijada en el calendario de las actividades de evaluación que se dará el primer día de la asignatura y se hará público a través de Caronte.

Las entregas de problemas se podrán recuperar en cualquier momento del curso, entregándolas de nuevo y evaluándolas con el autocorrector.

De acuerdo con la coordinación del Grado y la dirección de la Escuela de Ingeniería las siguientes actividades no se podrán recuperar:

  • Cuestionarios de autoevaluación
  • Actividades de clase evaluables

 

Procedimiento de revisión de las calificaciones

Para los exámenes (intrasemestral, final y recuperación), se indicará un lugar, fecha y hora de revisión en la que el alumnado podrá revisar la actividad con el profesorado. En este contexto, se podrán realizar reclamaciones sobre la nota de la actividad, que serán evaluadas por el profesorado responsable de la asignatura. Si el estudiante no se presenta a esta revisión, no se revisará posteriormente esta actividad.

Para el resto de actividades, si se detecta algún error en la corrección, se podrá pedir que se revise en cualquier momento, hasta la fecha de la revisión del examen de recuperación.

 

Calificaciones

No Evaluable (NA): Un estudiante se considerará no evaluable (NA) si no se ha presentado en ninguna de las siguientes actividades de evaluación: exámenes de la asignatura (intrasemestral, final y recuperación), prácticas y actividades evaluables en clase.

Nota final: Se calcula con la suma ponderada de las actividades de evaluación según criterios expuestos en el apartado de actividades de evaluación.

En caso de no superar la asignatura debido a que alguna de las actividades de evaluación no llega a la nota mínima requerida, la nota numérica del expediente será el menor valor entre 4.5 y la media ponderada de las notas. Con las excepciones de que se otorgará la calificación de "No Evaluable" al alumnado que no participe en ninguna de las actividades de evaluación, y de que la nota numérica del expediente será el valor menor entre 3.0 y la media ponderada de las notas en caso de que el o la estudiante haya cometido irregularidades en un acto de evaluación

Matrículas de honor: Otorgar una calificación de matrícula de honor es decisión del profesorado responsable de la asignatura. La normativa de la UAB indica que las MH sólo podrán concederse a estudiantes que hayan obtenido una calificación final igual o superior a 9.00. Puede otorgarse hasta un 5% de MH del total de estudiantes matriculados.

En caso de que el número de estudiantes con nota superior o igual a 9 supere el 5% del totalde matriculados, se aplicarán los siguientes criterios de priorización en el orden enumerado a continuación:

  1. Estudiantes que hayan realizado menos actividades de recuperación.
  2. Estudiantes con mayor nota final.
  3. Estudiantes con nota más alta en el examen final
  4. Estudiantes con nota más alta en el examen intrasemestral

 

Irregularidades cometidas por el alumnado

Sin perjuicio de otras medidas disciplinarias que seestimen oportunas, y deacuerdo con la normativaacadémica vigente, las irregularidades cometidas por un/a estudiante que puedan conducir a una variación de la calificación en una actividad evaluable se calificarán con un cero (0). Las actividades de evaluación calificadas de esta forma y por este procedimiento no serán recuperables. Si es necesario superar cualquiera de estas actividades de evaluación para aprobar la asignatura, esta asignatura quedará suspendida directamente, sin oportunidad de recuperarla en el mismo curso. Estas irregularidades incluyen, entre otras:

  • la copia total o parcial de una práctica, informe, o cualquier otra actividad de evaluación;
  • dejar copiar;
  • presentar un trabajo de grupo no realizado íntegramente por los miembros del grupo (aplicado a todos los miembros, no sólo a los que no han trabajado);
  • uso no autorizado de la IA (p. ej., Copiloto, ChatGPT o equivalentes) para resolver ejercicios, prácticas y/o cualquier otra actividad evaluable;
  • presentar como propios materiales elaborados por un tercero, aunque sean traducciones o adaptaciones, y por lo general trabajos con elementos no originales y exclusivos del estudiante;
  • tener dispositivos de comunicación (como teléfonos móviles, smart watches, bolígrafos con cámara, etc.) accesibles durante las pruebas de evaluación teórico-prácticas individuales (exámenes);
  • hablar con compañeros durante las pruebas de evaluación teórico-prácticas individuales (exámenes);
  • copiar o intentar copiar de otros alumnos durante las pruebas de evaluación teórico-prácticas (exámenes);
  • usar o intentar utilizar escritos relacionados con la materia durante la realización de las pruebas de evaluación teórico-prácticas (exámenes), cuando éstos no hayan sido explícitamente permitidos.

En ediciones futuras de esta asignatura, al alumnado que haya cometido irregularidades en un acto de evaluación no se le convalidará ninguna de las actividades de evaluación realizadas ni podrá acogerse a ninguna normativa específica de evaluación de los estudiantes repetidores.

 

Uso de la IA

Para esta asignatura, se permite el uso de tecnologías de Inteligencia Artificial (IA) exclusivamente en labores de apoyo, como la búsqueda de información, la interpretación y explicación de programas, resolución de dudas, etc. En ningún caso se permite el uso de la IA para la realización de las tareas de programación que deben entregarse como parte de la evaluación. Cualquier trabajo que incluya fragmentos generados con IA será considerado una falta de honestidad académica y comportará la aplicación de la normativa en lo referente a irregularidades por parte del estudiante.

 

Evaluación de los estudiantes repetidores

Si en el curso 2024-2025 se superó el bloque de programación de la asignatura "Fundamentos de Informática" (FI), se puede optar por una evaluación de la asignatura que consistirá en una prueba de síntesis, más la nota correspondiente al bloque de programación de FI obtenida el curso anterior.

Si el curso anterior el actual se superó la asignatura "Metodología de la Programación" y se aprobaron los ejercicios de repaso propuestos en aquella asignatura, se podrá optar por una evaluación que consistirá en una prueba de síntesis, sin tener que realizar todas las actividades de evaluación. La notafinalen ese casoserá de 5.

Para poder optar a esta evaluación diferenciada, la persona interesada debe pedirlo al profesorado mediante correo electrónico (Robert.Benavente@uab.cat / Xavier.Roca@uab.cat) a más tardar 15 días después del inicio de las clases.

 

Evaluación única

Esta asignatura no contempla el sistema de evaluación única.

 


Bibliografía

L. Joyanes Aguilar. Fundamentos de programación: algoritmos, estructuras de datos y objetos. 5ª Edición, McGraw-Hill, 2020. (Existe versión online: https://www-ingebook-com.eu1.proxy.openathens.net/ib/NPcd/IB_Escritorio_Visualizar?cod_primaria=1000193&libro=10211)

L. Joyanes Aguilar, L. Rodriguez Baena, M. Fernández Azuela. Fundamentos de programación: libro de problemas. 2ª Edición, McGraw-Hill, 2003.

E. Valveny, R. Benavente, A. Lapedriza, M. Ferrer, J. García. Programació en Llenguatge C. Amb 56 problemes resolts i comentats. Servei de publicacions de la UAB, 2009.

L. Joyanes, I. Zahonero: Programación en C: metodología, algoritmos y estructuras de datos. 2ª edición, McGraw-Hill, 2005. (Existe versión online: https://elibro.net/es/lc/uab/titulos/50302)

L. Joyanes, A. Castillo, L. Sánchez, I. Zahonero. Programación en C: libro de problemas. McGraw-Hill, 2002.

B.W. Kernighan, D.M. Ritchie. El lenguaje de programación C. 2ª edición, Prentice Hall, 1986.

B.W. Kernighan, R. Pike. La práctica de la programación. Pearson Educación, 2000.

J. Pujol. Algorismes i Programes. Servei de publicacions de la UAB, 1996.

 


Software

Microsoft Visual Studio: https://azureforeducation.microsoft.com/devtools

 


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
(PAUL) Prácticas de aula 411 Catalán primer cuatrimestre manaña-mixto
(PAUL) Prácticas de aula 412 Catalán primer cuatrimestre manaña-mixto
(PAUL) Prácticas de aula 431 Catalán primer cuatrimestre manaña-mixto
(PAUL) Prácticas de aula 432 Catalán primer cuatrimestre manaña-mixto
(PAUL) Prácticas de aula 451 Catalán primer cuatrimestre tarde
(PAUL) Prácticas de aula 452 Catalán primer cuatrimestre tarde
(PLAB) Prácticas de laboratorio 411 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 412 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 413 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 414 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 415 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 416 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 417 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 418 Catalán/Español primer cuatrimestre manaña-mixto
(PLAB) Prácticas de laboratorio 419 Catalán/Español primer cuatrimestre tarde
(PLAB) Prácticas de laboratorio 420 Catalán/Español primer cuatrimestre tarde
(PLAB) Prácticas de laboratorio 421 Catalán/Español primer cuatrimestre tarde
(PLAB) Prácticas de laboratorio 422 Catalán/Español primer cuatrimestre tarde
(TE) Teoría 41 Catalán primer cuatrimestre manaña-mixto
(TE) Teoría 43 Catalán primer cuatrimestre manaña-mixto
(TE) Teoría 45 Catalán primer cuatrimestre tarde