Universidad Nacional Abierta y a Distancia Vicerrectoría Académica y de Investigación Syllabus del curso Programación, Código 243002 1. Datos del curso Unidad a la que pertenece el curso: Escuela de Ciencias Básicas Tecnología e Ingeniería ECBTI Nivel de formación: Profesional Campo de formación: Disciplinar Número de Créditos: 4 Tipología de Curso: Metodológico Docente que diseña el curso: Juan El curso No se puede habilitar Manuel Aldana Porras Docente que actualiza el curso: Juan Manuel Aldana Porras Fecha de elaboración del curso: Fecha de actualización del curso: jueves, 1 de noviembre de 2018 martes, 7 de julio de 2020 Descripción del curso: El curso de Programación hace parte de la Escuela de Ciencias Básicas, Tecnología e Ingeniería, consta de 4 créditos académicos divididos en 4 unidades temáticas, las cuales se encuentran distribuidas en: Elementos básicos Lenguaje C, Estructuras de control repetitivas, Arreglos - punteros y Funciones. De allí, que el eje principal del curso sea el Lenguaje de programación C, como medio para resolver problemas de índole computacional a través de soluciones algorítmicas. El curso emplea la estrategia de Aprendizaje Basada en Tareas (ABT), las cuales se llevan a cabo a lo largo de 16 semanas, a partir de los ejercicios prácticos propuestos en cada una de las unidades temáticas y se encuentra ubicado dentro del núcleo problémico de Procesos Tecnológicos: Soluciones, procedimientos e Instrumentos. Es necesario que los estudiantes que participan en este curso cuenten con nociones de lógica matemática y conocimientos básicos relacionados con algoritmos, enfocados en el análisis y resolución de problemas cotidianos mediante pseudocódigo. 2. Propósito de formación: El propósito de formación del curso es el siguiente: Al culminar el curso académico, el estudiante construye soluciones algorítmicas orientadas a solventar problemas de índole ingenieril, mediante el correcto uso de la sintaxis y las buenas prácticas de programación del lenguaje C. 1 3. Resultados de aprendizaje Al finalizar el curso académico el estudiante estará en la capacidad de evidenciar: Resultado de aprendizaje 1: El estudiante será capaz de reconocer los elementos básicos del lenguaje C, mediante el uso de estructuras de control selectivas, identificando el flujo de ejecución general de un programa. Resultado de aprendizaje 2: El estudiante estará en capacidad de identificar el funcionamiento de las estructuras de control repetitivas, contrastando las diferencias de uso de cada una de estas dentro del lenguaje C. Resultado de aprendizaje 3: El estudiante será capaz de comprender la estructura de un arreglo y su correlación con el uso de punteros mediante la organización secuencial de datos inmersos en la ejecución de un programa, a fin de organizar extensos volúmenes de información. Resultado de aprendizaje 4: El estudiante estará en capacidad de desarrollar funciones propias dentro del lenguaje C, a partir del paradigma de programación modular, con el fin de optimizar el diseño, desarrollo y mantenimiento de una solución algorítmica. 4. Estrategia de aprendizaje: La estrategia de aprendizaje del curso es: Aprendizaje basado en tareas Esta estrategia consiste en: Facilitar al estudiante asumir un rol protagónico frente a su proceso formativo, transfiriendo las responsabilidades propias del quehacer académico, mediante el desarrollo de una serie de tareas organizadas de forma secuencial basadas en el contenido temático del curso. La realización de estas tareas requiere por parte de los estudiantes la obtención de una serie de conocimientos y habilidades que potencian y promueven su desarrollo. Es así, como Zhang et al (2011) plantean que “los estudiantes tienen la posibilidad de aprender no solo a través de la transmisión de conocimientos por parte del profesor, sino que tienen una posición activa en la construcción de sus conocimientos”. Así pues, la estrategia de aprendizaje para este curso se organiza en 6 Tareas • Tarea 1: Reconocimiento del curso - Instalación IDE 2 • • • • • Tarea Tarea Tarea Tarea Tarea 2: 3: 4: 5: 6: Elementos básicos lenguaje C Estructuras de control repetitivas Arreglos y punteros Funciones Presentación de resultados En cada una de estas tareas el estudiante deberá analizar el escenario planteado en el ejercicio, realizar una lista sistemática de la información solicitada (datos de entrada, datos de salida y procesos) para culminar con el diseño del algoritmo y el desarrollo del código. ZHANG, R;WANG, Y. el al. «The aplication of Task-driven Taeaching Method». En actas de InternationalConference of Information Technology, Computer Engineering and Management Scienses, 2011, pp. 212-214. 5. Contenidos y referentes bibliográficos del curso Unidad 1: Elementos básicos Lenguaje C En esta unidad se abordarán los siguientes contenidos: • Estructura general de un programa en lenguaje C. • Tipos de datos y Variables • Operadores de asignación y aritméticos • Flujo de datos - Entradas y salidas • Estructuras de control selectivas Para abordar los contenidos se requiere consultar los siguientes referentes bibliográficos: • Joyanes, A. L., & Zahonero, M. I. (2005). Lenguaje C: Elementos básicos. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 94 – 134). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 • Joyanes, A. L., & Zahonero, M. I. (2005). Operadores y Expresiones. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 140 – 154). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 3 • • Joyanes, A. L., & Zahonero, M. I. (2005). Estructuras de selección: if y switch. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 168 – 185). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 Aldana, J. (2018, noviembre 8), Estructuras de control selectivas [Archivo de video]. Recuperado de http://hdl.handle.net/10596/21504 Unidad 2: Estructuras de control repetitivas En esta unidad se abordarán los siguientes contenidos: • Estructura y funcionamiento general de un bucle. • Sentencias while, do while y for • Sentencias goto, break y continue. • Operadores de incremento y decremento. Para abordar los contenidos se requiere consultar los siguientes referentes bibliográficos: Organizar los referentes bibliográficos de acuerdo con las normas APA • Joyanes, A. L., & Zahonero, M. I. (2005). Estructuras de Control: Bucles. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 196 – 223). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 • Aldana, J. (2018, noviembre 8), Estructuras de control repetitivas [Archivo de video]. Recuperado de http://hdl.handle.net/10596/21676 • Joyanes, A. L., & Zahonero, M. I. (2005). Bucles anidados. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 224 – 227). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 Unidad 3: Arreglos y punteros En esta unidad se abordarán los siguientes contenidos: • Estructura general arreglos unidimensionales • Estructura general Arreglos bidimensionales • Concepto e implementación de punteros • Estructura y uso de cadenas • Asignación dinámica de memoria 4 Para abordar los contenidos se requiere consultar los siguientes referentes bibliográficos: • Joyanes, A. L., & Zahonero, M. I. (2005). Arrays. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 314 – 331). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 • Joyanes, A. L., & Zahonero, M. I. (2005). Punteros. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 406 – 423). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 • Aldana, J. (2018, noviembre 8), Arreglos en lenguaje C [Archivo de video]. Recuperado de http://hdl.handle.net/10596/21694 Unidad 4: Funciones En esta unidad se abordarán los siguientes contenidos: • Estructura de una Función • Parámetros de una función • Prototipos • Ámbito de las variables Para abordar los contenidos se requiere consultar los siguientes referentes bibliográficos: • Joyanes, A. L., & Zahonero, M. I. (2005). Funciones. En Programación en c: metodología, algoritmos y estructura de datos (2a. ed.). (pp. 236 – 261). Recuperado de: https://elibronet.bibliotecavirtual.unad.edu.co/es/lc/unad/titulos/50302 • Aldana, J. (2018, noviembre 8), Funciones - Lenguaje C [Archivo de video]. Recuperado de http://hdl.handle.net/10596/21505 6. Organización de las actividades académicas por semanas y Plan de Evaluación del curso Momento inicial Tarea 1: Reconocimiento del curso - instalación IDE 5 Se desarrolla entre la semana 1 y la semana 2 Responde al resultado de aprendizaje 1 Las actividades son: El estudiante desarrolla un trabajo de forma individual donde reconoce los elementos básicos de la plataforma necesarios para el desarrollo del curso e instala el entorno de trabajo esencial para el progreso de las actividades durante el periodo académico. Evaluación del momento inicial Los criterios con los que será evaluado son: • Criterio de Forma: La entrega final contiene el archivo fuente .C y el archivo en formato word o pdf con todos los puntos de la guía diligenciados. • Criterio de Contenido: Se identifican los entornos asociados a la plataforma del curso, los espacios de participación grupal e individual, se relaciona el programa de las web académicas y los medios de atención del tutor asignado. • Criterios de procedimiento: El IDE seleccionado por el estudiante para el desarrollo de las actividades del curso es instalado correctamente y se ejecuta el primer programa simple de prueba “Hola Mundo”. La valoración máxima de esta actividad es de 25 puntos, equivalente al 5% de la evaluación del curso. Momento intermedio Tarea 2: Elementos básicos lenguaje C Se desarrolla entre la semana 3 y la semana 5 Responde al resultado de aprendizaje 1 Las actividades son: El estudiante desarrolla un ejercicio práctico, a partir de las siguientes tareas: Aclarar términos y conceptos, leer y analizar el escenario del ejercicio, hacer una lista sistemática del análisis (datos de entrada, datos de salida y procesos), definir el ejercicio (algoritmo - código) y presentar resultados. Evaluación de la Tarea 2: Los criterios con los que será evaluado son: • Criterio de Forma: La entrega final contiene el archivo fuente .C y el Formato de Informe individual, el cual presenta un desarrollo lógico de cada uno de sus ítems mostrando una solución coherente del ejercicio resuelto. • Criterio de Contenido: El programa propuesto responde a una solución algorítmica estructurada desde los requerimientos presentados en el problema en relación con su funcionalidad y resultados finales. 6 • • Criterios de procedimiento: El programa presentado hace correcto uso de los conceptos plateados para la unidad en curso, siguiendo las buenas prácticas de programación para la creación de la función main, inclusión de librerías y orden en el código. Criterio de participación: El estudiante participó de forma oportuna en el foro, realizando la realimentación de los programas presentados por sus compañeros La valoración máxima de esta actividad es de 80 puntos. Tarea 3: Estructuras de control repetitivas Se desarrolla entre la semana 6 y la semana 8 Responde al resultado de aprendizaje 2 Las actividades son: El estudiante desarrolla un ejercicio práctico, a partir de las siguientes tareas: Aclarar términos y conceptos, leer y analizar el escenario del ejercicio, hacer una lista sistemática del análisis (datos de entrada, datos de salida y procesos), definir el ejercicio (algoritmo - código) y presentar resultados Evaluación de la Tarea 3: Los criterios con los que será evaluado son: • Criterio de Forma: La entrega final contiene el archivo fuente .C y el Formato de Informe individual, el cual presenta un desarrollo lógico de cada uno de sus ítems mostrando una solución coherente del ejercicio resuelto. • Criterio de Contenido: El programa propuesto responde a una solución algorítmica estructurada desde los requerimientos presentados en el problema en relación con su funcionalidad y resultados finales. • Criterios de procedimiento: El programa presentado hace correcto uso de los conceptos plateados para la unidad en curso, siguiendo las buenas prácticas de programación para la creación de la función main, inclusión de librerías y orden en el código. • Criterio de participación: El estudiante participó de forma oportuna en el foro, realizando la realimentación de los programas presentados por sus compañeros La valoración máxima de esta actividad es de 90 puntos. Tarea 4 Arreglos y punteros Se desarrolla entre la semana 9 y la semana 11 Responde al resultado de aprendizaje 3 7 Las actividades son: El estudiante desarrolla un ejercicio práctico, a partir de las siguientes tareas: Aclarar términos y conceptos, leer y analizar el escenario del ejercicio, hacer una lista sistemática del análisis (datos de entrada, datos de salida y procesos), definir el ejercicio (algoritmo - código) y presentar resultados Evaluación de la Tareas 4: Los criterios con los que será evaluado son: • Criterio de Forma: La entrega final contiene el archivo fuente .C y el Formato de Informe individual, el cual presenta un desarrollo lógico de cada uno de sus ítems mostrando una solución coherente del ejercicio resuelto. • Criterio de Contenido: El programa propuesto responde a una solución algorítmica estructurada desde los requerimientos presentados en el problema en relación con su funcionalidad y resultados finales. • Criterios de procedimiento: El programa presentado hace correcto uso de los conceptos plateados para la unidad en curso, siguiendo las buenas prácticas de programación para la creación de la función main, inclusión de librerías y orden en el código. • Criterio de participación: El estudiante participó de forma oportuna en el foro, realizando la realimentación de los programas presentados por sus compañeros La valoración máxima de esta actividad es de 90 puntos. Tarea 5 Funciones Se desarrolla entre la semana 12 y la semana 14 Responde al resultado de aprendizaje 4 Las actividades son: El estudiante desarrolla un ejercicio práctico, a partir de las siguientes tareas: Aclarar términos y conceptos, leer y analizar el escenario del ejercicio, hacer una lista sistemática del análisis (datos de entrada, datos de salida y procesos), definir el ejercicio (algoritmo - código) y presentar resultados Evaluación de la Tareas 5: Los criterios con los que será evaluado son: • Criterio de Forma: La entrega final contiene el archivo fuente .C y el Formato de Informe individual, el cual presenta un desarrollo lógico de cada uno de sus ítems mostrando una solución coherente del ejercicio resuelto. 8 • Criterio de Contenido: El programa propuesto responde a una solución algorítmica estructurada desde los requerimientos presentados en el problema en relación a su funcionalidad y resultados finales. • Criterios de procedimiento: El programa presentado hace correcto uso de los conceptos plateados para la unidad en curso, siguiendo las buenas prácticas de programación para la creación de la función main, inclusión de librerías y orden en el código. • Criterio de participación: El estudiante participó de forma oportuna en el foro, realizando la realimentación de los programas presentados por sus compañeros La valoración máxima de esta actividad es de 90 puntos. Momento final Tarea 6: Presentación de resultados Se desarrolla entre la semana 15 y la semana 16 Responde al resultado de aprendizaje 4 Las actividades son: El estudiante desarrolla un ejercicio práctico, a partir de las siguientes tareas: Aclarar términos y conceptos, leer y analizar el escenario del ejercicio, hacer una lista sistemática del análisis (datos de entrada, datos de salida y procesos), definir el ejercicio (algoritmo - código) y presentar resultados Evaluación de la Tarea 6: Los criterios con los que será evaluado son: • Criterio de Forma: La entrega final contiene el archivo fuente .C y el Formato de Informe individual, el cual presenta un desarrollo lógico de cada uno de sus ítems mostrando una solución coherente del ejercicio resuelto. • Criterio de Contenido: El programa propuesto responde a una solución algorítmica estructurada desde los requerimientos presentados en el problema en relación con su funcionalidad y resultados finales. • Criterios de procedimiento: El programa presentado hace correcto uso de los conceptos plateados para la unidad en curso, siguiendo las buenas prácticas de programación para la creación de la función main, inclusión de librerías y orden en el código. Las evidencias de aprendizaje son: Como producto final del trabajo realizado en el curso, el estudiante entrega un programa que consolida las temáticas abordadas durante el periodo académico. 9 La valoración total de este momento es de 125 puntos, equivalente al 25% de la evaluación del curso. 7. Estrategias de acompañamiento docente Para desarrollar las actividades del curso usted contará con el acompañamiento del docente. Los espacios en los cuales usted tendrá interacciones con su docente son los siguientes: • Correo en campus virtual • Foros en campus virtual • Sesiones de chat en skype • Sesiones de conferencia en línea o webconference 10