planeación didactica fundamentos de programación
DESCRIPTION
fundamentos de programacionTRANSCRIPT
Fundamentos de ProgramaciónPlaneación Académica
CARRERA: Desarrollo de Software
NOMBRE DE LA ASIGNATURA: Fundamentos de Programación SEMESTRE: Primero
DOCENTE: Vladimir Valdez Trejo
FECHA DE BLOQUE: 16 de julio al 26 de Septiembre
Descripción de la asignatura:La asignatura de Fundamentos de Programación tiene como meta principal que desarrolles las competencias necesarias para construir programas que resuelvan problemas reales. Constituye un pilar primordial para aquellos alumnos que, como tú, están estudiando una carrera relacionada con computación -como Desarrollo de Software y Telemática- pues los conocimientos y habilidades que desarrollen en este curso serán indispensables para la varias de las asignaturas subsecuentes del plan de estudios de ambas ingenierías, tal es el caso de bases de datos, programación orientada a objetos, programación web, estructura de datos, entre otras.
El lenguaje de alto nivel que se ha elegido para implementar los programas es C, ya que es uno de los lenguajes, estructurados y modulares, utilizados actualmente; además cuenta con entornos de trabajo de software libre, como el que utilizaremos llamado Dev-C.
Para facilitar que desarrolles las competencias establecidas, los contenidos del curso se han dividido de forma estratégica en seis unidades. En la primera se delinea el concepto de computadora y su funcionamiento, para ello se describe los elementos que la integran; posteriormente, se hace una aproximación a los lenguajes de programación y los paradigmas que existen en la actualidad, resaltando la programación modular y estructurada. En la siguiente unidad se expone la metodología de la programación y se introduce el concepto de algoritmo, que es la solución sistemática de problemas, así que también se presentan dos formas de representación: el pseudocódigo y los diagramas de flujo.
Asimismo, se ilustran las estructuras secuenciales, selectivas y repetitivas. A continuación, en la unidad tres, se presentan los elementos básicos para construir un programa simple en lenguaje C: datos, contantes, variables y las operaciones básicas de entradas/salidas para describir el uso de los operadores aritméticos, relacionales y lógicos para la manipulación de operaciones y expresiones en C.
División de Ciencias Exactas, Ingeniería y Tecnología | Ingeniería en Desarrollo de software 1
Fundamentos de ProgramaciónPlaneación Académica
En la unidad cuatro se distinguen y utilizan las distintas estructuras de control, tanto selectivas (if, if-else, switch) como repetitivas (while, do-while, for), que ofrece el lenguaje C; se introduce su representación en diagrama de flujo y algoritmo, además de su sintaxis en C. En la unidad cinco se introducen las estructuras de datos: arreglos y registros, se explica qué son, cómo funcionan y para qué sirven, además, se plantean problemas en donde su uso es indispensable para su resolución. Por último, en la unidad seis se reconoce la importancia de la programación modular, construyendo soluciones modulares utilizando funciones en lenguaje C.
Competencia general:
Desarrollar programas estructurados y modulares que resuelvan problemas simples, mediante el análisis del problema, el diseño de un algoritmo y su codificación en lenguaje C.
Competencias específicas: Describir los elementos de la computadora y el ciclo de vida de software mediante el análisis un programa simple, con el fin de identificar los pasos
que se realizan para construirlo y determinar qué elementos de la computadora intervienen en su ejecución. 2. Comprensión
Diseñar algoritmos para resolver problemas mediante su representación en un diagrama de flujo y la elaboración del pseudocódigo. 4. Utilización
Utilizar el lenguaje de programación C para resolver problemas a través de la implementación de algoritmos secuenciales. 4. Utilización Fundamentos
de programación Información general de la asignatura 5 División de Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software
Utilizar estructuras de control selectivas y repetitivas para resolver problemas simples a través del desarrollo de programas en lenguaje C. 4.
Utilización
Utilizar estructuras de datos para almacenar y manipular los datos de un programa por medio del desarrollo de programas en lenguaje C. 4.
Utilización
Implementar funciones para resolver problemas a través del desarrollo de programas modulares escritos en lenguaje C. 4. Utilización
Unidad Temas Actividad de la Unidad Fechas de Entrega
División de Ciencias Exactas, Ingeniería y Tecnología | Ingeniería en Desarrollo de software 2
Fundamentos de ProgramaciónPlaneación Académica
Sugeridas
1. Introducción a la computadora y desarrollo de
software
1.1. ¿Qué es una computadora?1.2. Estructura y funcionamiento de una computadora 1.2.1.Modelo de Von Neumann 1.2.2.Ejecución de programas en la computadora 1.2.3.Almacenamientos de programas y datos1.3. Lenguajes de programación 1.3.1. Evolución de los lenguajes de programación 1.3.2.Paradigmas de los lenguajes de programación1.4. Ciclo de vida del software.
Actividad 1. Importancia de la programación en el desarrollo de software Foro 02 de Agosto
Evidencia de aprendizaje. Elementos introductorios de programación Tarea 03 de Agosto
Autorreflexiones Unidad 1 Tarea 05 de Agosto
2. Diseño de algoritmos
2.1. Concepto de algoritmo y características2.2. Representaciones de algoritmos 2.2.1.Pseudocódigo 2.2.2.Diagrama de flujo2.3. Estructuras de control 2.3.1.Secuenciales 2.3.2.Selectivas 2.3.3.Repetitivas
Actividad 1. Representación de algoritmos Foro
08 de Mayo
Actividad 2. Diseño de un algoritmo con estructuras selectivas Práctica
08 de Mayo
Actividad 3. Diseño de un algoritmo con estructuras repetitivas Práctica
10 de Agosto
Evidencia de aprendizaje. Planteamiento del problema Tarea
12 de Agosto
Foro planteamiento del problema 14 de Agosto
Autorreflexiones Unidad 2 Tarea 16 de Agosto
3. Introducción al lenguaje C
3.1. Componentes de un programa 3.1.1.Instrucciones 3.1.2.Comentarios 3.1.3.Palabras reservadas 3.1.4.Estructura general de un programa3.2. Tipos de datos 3.3. Variables y constantes 3.3.1.Identificadores 3.3.2.Declaración e inicialización de variables Fundamentos de programación Información general de la asignatura 6 División de Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 3.3.3.Tipos de constantes 3.3.4.Declaración de constantes3.4. Expresiones matemáticas 3.4.1.Tipos de operadores
Actividad 1. Introducción al lenguaje C Foro 20 de Agosto
Actividad 2. Funciones de entrada y salida Práctica
23 de Agosto
Actividad 3. Análisis, diseño y codificación de un programa en C Foro
26 de Agosto
28 de Agosto
División de Ciencias Exactas, Ingeniería y Tecnología | Ingeniería en Desarrollo de software 3
Fundamentos de ProgramaciónPlaneación Académica
3.4.2.Evaluación de expresiones3.5. Bibliotecas y funciones 3.5.1.Funciones matemáticas 3.5.2.Funciones de entrada y salida
Evidencia de aprendizaje. Proyecto de vida Tarea
Autorreflexiones Unidad 3 Tarea 30 de Agosto
4. Estructuras de control
4.1. Estructuras selectivas 4.1.1.Estructura selectivasimple (if) 4.1.2.Estructura selectiva doble (if-else) 4.1.3.Estructura selectiva múltiple (switch-case)4.2. Estructuras repetitivas 4.2.1.Estructura Mientras (while) 4.2.2.Estructura Desde-mientras (for) 4.2.3.Estructura Hacer-mientras (do-while)4.3. Estructuras anidadas
Actividad 1. Estructuras de control Foro 02 de Septiembre
Actividad 2. Estructuras selectivas Prácticas 04 de Septiembre
Actividad 3. Estructuras repetitivas Prácticas 06 de Septiembre
Evidencia de aprendizaje. Avance de solución del problema implementando las estructuras de control Tarea
08 de Septiembre
Autorreflexiones Unidad 4 Tarea 09 de Septiembre
5. Estructuras de datos
5.1. Arreglos 5.1.1.Definición y tipos 5.1.2.Declaración e inicialización 5.1.3.Acceso a los elementos de un arreglo 5.1.4.Ciclos y arreglos 5.1.5.Cadenas5.2. Estructuras 5.2.1.Definición, declaración e inicialización 5.2.2.Acceso a los elementos
Actividad 1. Estructuras de Datos Foro 11 de Septiembre
Actividad 2. Arreglos y estructuras Práctica 14 de Septiembre
Evidencia de aprendizaje. Programa en C. Estructuras de datos Práctica
16 de Septiembre
Autorreflexiones Unidad 5 Tarea 18 de Septiembre
6. Funciones
6.1. Diseño descendente6.2. Definición, declaración e invocación de funciones en C6.3. Alcance de las variables6.4. Paso de parámetros 6.4.1.Por valor 6.4.2.Por referencia
Actividad 1. Foro Funciones 20 de Septiembre
Actividad 2. Funciones Práctica 22 de Septiembre
Evidencia de aprendizaje. Programa en C. Versión modular Práctica
24 de Septiembre
Autorreflexiones Unidad 6 Tarea 25 de Septiembre
Asignación a Cargo del Docente Asignación a cargo del docente Tarea 26 de Junio
División de Ciencias Exactas, Ingeniería y Tecnología | Ingeniería en Desarrollo de software 4