Fundamentos de programación Código:  75.554    Créditos:  6
Consulta de los datos generales   Descripción   La asignatura en el conjunto del plan de estudios   Campos profesionales en que se proyecta   Conocimientos previos   Objetivos y competencias   Contenidos   Consulta de los recursos de aprendizaje que dispone la asignatura   Recursos de aprendizaje y herramientas de apoyo   Bibliografía y fuentes de información   Metodología   Información sobre la evaluación en la UOC   Consulta del modelo de evaluación   Evaluación Contínua   Evaluación final   Feedback  
Este es el plan docente de la asignatura para el segundo semestre del curso 2023-2024. Podéis consultar si la asignatura se ofrece este semestre en el espacio del campus Más UOC / La universidad / Planes de estudios). Una vez empiece la docencia, tenéis que consultarlo en el aula. El plan docente puede estar sujeto a cambios.

Esta asignatura es el punto de entrada a las técnicas de programación. Es una asignatura introductoria en la que aprenderéis los fundamentos del diseño algorítmico y la programación en C.

Amunt

Esta asignatura es el punto de inicio a las técnicas de programación. La profundización se hará cursando las asignaturas siguientes del plan de estudios:

  • Prácticas de Programación
  • Diseño y Programación Orientada a Objetos

La algorítmica y la práctica de programación en lenguaje C permite adquirir unos conocimientos que son imprescindibles para otras asignaturas del grado.

Amunt

Si os dedicáis al desarrollo de software, no es necesario decir que la práctica profesional girará principalmente en torno a las competencias adquiridas en una serie de asignaturas, la primera de las cuales es ésta. Así pues, esta asignatura ocupa una posición central en los estudios y en muchas de sus salidas profesionales.

Amunt

La asignatura no presupone ningún conocimiento previo de esta disciplina ni de ninguna otra asignatura de estos estudios. Es conveniente, sin embargo, tener algunos conocimientos fundamentales de matemáticas.

Amunt

Competencias dentro del Grado

  • Capacidad de diseñar y construir aplicaciones informáticas mediante técnicas de desarrollo, integración y reutilización.
  • Conocimientos básicos sobre el uso y la programación de los ordenadores, sistemas operativos, bases de datos y programas informáticos con aplicación en la ingeniería.

Objetivos de la asignatura

El objetivo general de la asignatura es aprender a diseñar algoritmos y programas  de baja complejidad que cumplan unos criterios básicos de calidad.

Los objetivos concretos son los siguientes:

  1. Conocer y asimilar los conceptos fundamentales de la algorítmica mediante el aprendizaje y comprensión de la sintaxis y semántica de una notación algorítmica.
  2. Poner en práctica los conceptos y las técnicas de programación para que, a partir del enunciado de un problema, se pueda diseñar una solución algorítmica e implementar  el programa correspondiente que lo resuelva.
  3. Usar diferentes técnicas de programación para resolver de manera más eficientes problemas complicados:  la modularidad como una forma idónea de afrontar problemas complejos al dividirlos en un conjunto de subproblemas más sencillos y los esquemas algorítmicos como un a técnica eficaz para construir algoritmos a partir de soluciones ya conocidas.
  4. Adquirir práctica en la aplicación de los conceptos anteriores en un entorno real de desarrollo de programas y así, adquirir un conocimiento no solo conceptual, sino también práctico de cómo escribir un programa, compilarlo, montarlo y ejecutarlo.

 

Amunt

Algoritmia

  • Introducción a la programación
  • Tipos de datos: básicos, estructurados y abstractos
  • Estructuras de control: secuencial, alternativa e iterativa
  • Esquemas algorítmicos: recorrido y búsqueda
  • Modularidad
  • Recursividad

Programación en C

  • Guía de estilo del lenguaje C
  • Guías de lenguaje C:
    • Tipos básicos de datos
    • Operaciones de cambio de tipos de datos
    • Cadenas de caracteres
    • Funciones de entrada y salida
    • Parámetros de entrada y salida
    • Punteros
  • Entorno de programación:
    • Introducción al entorno de programación CodeLite
    • Modularidad en CodeLite
    • Corrector automático ACME

Amunt

Material Soporte
Materiales de programación Web

Amunt

En los recursos del aula encontraréis el acceso a la XWiki que contiene todos los recursos que necesitáis: unidades de contenidos, guías de software y lenguaje C y orientaciones para realizar las diferentes actividades. También tenéis accesible el contenido de la XWiki desde el aula de laboratorio.

Desde el aula también se accede a la recopilación de cuestiones frecuentes (FAQs) que os servirán para encontrar respuestas rápidas a las dudas más habituales y que os será muy útil para resolver las PEC y la PR.

Finalmente, des del espacio de recursos del aula, accederéis a la Máquina Virtual (VM) que incluye el software  que necesitáis para programar en C, y también el código de los ejemplos de C de la xWiki.

Amunt

  • Dmitrovi, S. Programming in C, Fourth Edition. Apress, 2021. 0p. ISBN 9781484266434
  • Gonzalez-Morris, G. & Horton, I. Beginning C: From Beginner to Pro. Apress, 2020. 0p. ISBN 9781484259764
  • Kernighan, B.W. & Ritchie, D.M. The C programming language. Pearson IT Certification, 1988. 0p. ISBN 9780133086249
  • Prinz, P. & Kirch-Prinz, U. C Pocket Reference. O'Reilly Media, Inc., 2002. 0p. ISBN 9780596004361

Amunt

Para poder lograr los objetivos propuestos, durante todo el semestre iremos combinando el estudio de la teoría algorítmica (diseño de algoritmos) con la práctica de programación en C (codificación de programas).

Cada semana os propondremos una actividad diferente, las llamadas pruebas de evaluación continuada (PECs). En la propia actividad enlazaremos los recursos necesarios para resolverla.

También tendréis que hacer una práctica (PR) y entregarla si queréis superar la asignatura. Los estudiantes que no entreguen la PR y obtengan una nota mínima de 5.0 no podrán superar la asignatura.

Finalmente, tendréis que presentaros a las pruebas finales. Dependiendo de si habéis superado las PECs o no, os tendréis que presentar a una Prueba de Síntesis (PS) o a un Examen (EX), tal como se detalla en el apartado de modelo de evaluación.

En esta asignatura, mucho más que en otras, la asimilación de los conceptos y métodos que le son propios depende en gran medida de la realización continuada de los ejercicios propuestos y de practicar mucho. Por este motivo, es muy importante que hagáis cada semana los ejercicios de cada unidad y que practiquéis con los aspectos concretos del lenguaje y del entorno a programación.

El aprendizaje de la programación es eminentemente práctico y necesita de un proceso continuado e incremental. La evaluación continuada (las PEC y la PR) sirve para hacer este aprendizaje incremental. Esta es sin duda la vía que garantiza mejor vuestro logro de los objetivos previstos.

Para desarrollar la parte práctica de la asignatura tendréis a vuestro alcance un Laboratorio Virtual de C. El Laboratorio es accesible desde el campus y es atendido por un consultor de laboratorio que os ayudará a resolver cualquier duda que tengáis sobre la instalación del software y la programación en C. El laboratorio está pensado exclusivamente para apoyar a la instalación del software, y resolver dudas relacionadas con los ejercicios de C de las PEC y el desarrollo de la  práctica.

Amunt

El proceso de evaluación se fundamenta en el trabajo personal de cada estudiante y presupone la autenticidad de la autoría y la originalidad de los ejercicios realizados.

La falta de autenticidad en la autoría o de originalidad de las pruebas de evaluación; la copia o el plagio; el intento fraudulento de obtener un resultado académico mejor; la colaboración, el encubrimiento o el favorecimiento de la copia, o la utilización de material o dispositivos no autorizados durante la evaluación, entre otras, son conductas irregulares que pueden tener consecuencias académicas y disciplinarias graves.

Por un lado, si se detecta alguna de estas conductas irregulares, puede comportar el suspenso (D/0) en las actividades evaluables que se definan en el plan docente –incluidas las pruebas finales– o en la calificación final de la asignatura, ya sea porque se han utilizado materiales o dispositivos no autorizados durante las pruebas, como redes sociales o buscadores de información en internet, porque se han copiado fragmentos de texto de una fuente externa (internet, apuntes, libros, artículos, trabajos o pruebas del resto de estudiantes, etc.) sin la correspondiente citación, o porque se ha practicado cualquier otra conducta irregular.

Por el otro, y de acuerdo con las normativas académicas, las conductas irregulares en la evaluación, además de comportar el suspenso de la asignatura, pueden dar lugar a la incoación de un procedimiento disciplinario y a la aplicación, si procede, de la sanción que corresponda.

Amunt

Esta asignatura puede superarse por una doble vía:

- A partir de las actividades hechas a lo largo del curso y la realización de una prueba de síntesis (PS):

La combinación de la nota final de las actividades de evaluación continua (EC) y la calificación final de las actividades prácticas (Pr) da como resultado la calificación final de evaluación continua (FC: EC + Pr).
Para tener derecho a hacer la PS, la calificación final de evaluación continua (FC) debe ser igual o superior a 5. La nota final de la asignatura se obtendrá posteriormente cruzando la nota de la PS con la FC.

- Mediante la realización de un examen final (EX):

Para hacer el EX no es necesario haber superado la EC. Por esta vía, la calificación final de la asignatura se obtiene cruzando la nota del EX con la calificación final de las actividades prácticas (Pr).

En cualquiera de las dos vías es obligatorio hacer las actividades prácticas (Pr).

La fórmula de acreditación de la asignatura es la siguiente: (EC + Pr) + PS o EX + Pr.


Ponderación de las calificaciones

Opción siguiendo y superando la FC: (EC + Pr) + PS

Final Continuada: (FC) = EC + Pr

EC = 40%

Pr = 60%

Notas mínimas:

· Pr = 5

· EC = 4

En caso de no conseguir la nota mínima en la Pr, la nota obtenida en la fórmula corresponde a la obtenida en la Pr, o el que indique el modelo de evaluación.


Nota final de asignatura: FC + PS

FC = 70%

PS = 30%

Notas mínimas:

· PS = 3,5

Cuando la nota obtenida en la PS sea inferior a los mínimos establecidos para cada fórmula, la calificación final de la asignatura será la nota obtenida en la PS.

Opción con EX: (EX+Pr)+EC

Final de examen (FE) = EX + Pr

EX = 60 %

Pr = 40%

Notas mínimas:

· Pr = 5

En caso de no conseguir la nota mínima en la Pr, la nota obtenida en la fórmula corresponde a la obtenida en la Pr, o el que indique el modelo de evaluación.


Nota final de asignatura: FE + EC

FE = 65%

EC = 35%

Notas mínimas:

· EX = 4

Esta fórmula de ponderación sólo se aplicará cuando la nota resultante mejore la obtenida en el EX. Cuando la nota obtenida en el EX sea inferior a 4 o la calificación resultante de la fórmula de ponderación no permita mejorar la nota obtenida en el EX, la calificación final de la asignatura será la nota obtenida en el EX.

En el caso de asignaturas con prácticas (Pr) que cruzan con el examen (EX), la fórmula de ponderación sólo se aplicará cuando la nota resultante mejore la obtenida en FE (FE=EX+Pr). Cuando la nota obtenida en el EX sea inferior a 4, la calificación resultante de la asignatura será la nota obtenida en el EX. Cuando la calificación resultante de la fórmula de ponderación no permita mejorar la nota obtenida en FE, la calificación final de la asignatura será la nota obtenida en FE.

Amunt

Pruebas de evaluación continua (PEC)

Os encontraréis PEC de dos tipos diferentes:  

_ PEC Moodle (las PEC1, PEC2, PEC3, PEC5, PEC7, PEC9 y PEC10):

Cada PEC Moodle normalmente constará de dos partes:

- Un cuestionario de diseño algorítmico 

- Un pequeño ejercicio de programación en C 

Para que evaluemos la PEC Moodle es imprescindible que hayáis realizado el ejercicio de programación en C en caso de que tenga.

Cada PEC Moodle tiene un peso de 7% en la nota final de EC.

_ PEC de diseño y codificación (las PEC4, PEC6 y PEC8):

A partir de un enunciado que plantea un problema concreto, se deberá diseñar un algoritmo que lo resuelva, y después codificarlo en un programa C.

Cada PEC de diseño y codificación tiene un peso de 17% en la nota final de EC.

 

PRÁCTICA (PR)

La Práctica consiste en la resolución de un proyecto de programación en C que se plantea a partir de un contexto práctico. Es obligatorio entregar la práctica y obtener una nota mínima de 5 para aprobar la asignatura.

Fraude o Plagio

Es importante tener claro que el seguimiento correcto de la asignatura os compromete a hacer las actividades propuestas (PEC y Práctica) de manera individual y según las indicaciones que pauta este Plan Docente.

En caso de que no sea así, las actividades se evaluarán con una D o un 0 según corresponda. En concreto, en caso de extrema similitud entre algún ejercicio de alguna PEC/Práctica de dos o más estudiantes que desacredite el hecho de haberla realizado individualmente, la nota final de AC/Práctica será una D para todos ellos, de acuerdo con la normativa UOC de plagio ya indicada anteriormente.

Amunt

Las Pruebas Finales (PF), dependiendo de la vía de evaluación escogida, consisten en una Prueba de Síntesis (PS) o en un Examen (EX).

Tal y como se indica en el apartado "Consulta el modelo de evaluación", en la opción siguiendo la FC se debe hacer la prueba de síntesis (PS) y en la opción con EX hay que hacer el examen. Por tanto, en cualquier caso, para superar la asignatura hay que hacer una prueba final y en ambos casos es imprescindible tener una nota mínima final de práctica de 5.

Amunt

De cada una de las actividades de evaluación del curso (PEC y Prácticas), además de las soluciones publicadas en la agenda del aula, los estudiantes en el umbral del aprobado (C+/C-), recibirán un feedback personal en el que se comentarán los errores cometidos y se darán indicaciones de mejora.

Este feedback se recibirá mediante el mismo aplicativo de entregas y registro de EC en la fecha de publicación de las notas de cada actividad.

Amunt