PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I Table of contents 1 INFORMACIÓN GENERAL...2 2 INTRODUCCIÓN... 2 3 OBJETIVOS GENERALES DE LA ASIGNATURA... 3 4 OBJETIVOS, TEMAS Y SUBTEMAS... 3 5 PLAN TEMÁTICO...6 6 ORIENTACIONES METODOLÓGICAS... 7 7 SISTEMA DE EVALUACIÓN...7 8 BIBLIOGRAFÍA... 8 9 RELACIÓN DE AUTORES...8 10 APROBACIÓN...8
1. INFORMACIÓN GENERAL FACULTAD: Ciencias de la Educación y Humanidades PLAN DE ESTUDIOS: 1999 CARRERA: TIEMPO DE ESTUDIOS: Informática Educativa 3 años para Profesor de Educación Media 5 años para Licenciado MENCIÓN U ORIENTACIÓN: NOMBRE DE ASIGNATURA: Profesor de Educación Media Programación I AÑO ACADÉMICO: 2 SEMESTRE: 2 FRECUENCIA SEMANAL: DIURNO: NOCTURNO: TOTAL DE HORAS: CREDITOS: REQUISITOS: CORREQUISITOS: 4 Horas 4 Horas 4 Horas 60 Horas Ninguno Introducción a la Programación Ninguno CÓDIGO: 2. INTRODUCCIÓN En la asignatura de Programación I se pretende continuar desarrollando las habilidades del razonamiento lógico alcanzado por los educandos en la asignatura de Introducción a la Programación. En esta asignatura se introducirá un nuevo lenguaje de Programación, Lenguaje C++. Iniciaremos estudiando la estructura de un programa C++ y los proyectos, abordando posteriormente los elementos básicos del lenguaje, los operadores, estructuras de control, funciones, elementos de clases y objetos, archivos y finalizando con las estructuras de datos. Pag 2
3. OBJETIVOS GENERALES DE LA ASIGNATURA Académicos 1. Saber cual es la organización, elementos básicos y estructura de un programa C /C++. 2. Saber cuales son los operadores y estructuras de control que se utilizan en el lenguaje C /C++. 3. Saber resolver un problema de programación a través de la programación modular (funciones). 4. Conocer algunos conceptos de clases y objetos 5. Desarrollar habilidades en la utilización de archivos en la resolución de problemas. 6. Desarrollar habilidades en la resolución de problemas aplicando las diferentes estructuras de datos. SicoSociales 1. Contribuir a la formación de valores morales, cívicos y éticos a través de las diferentes formas de organización de la enseñanza aprendizaje propuesto en la asignatura. 2. Adquirir conciencia de la utilidad practica de la programación en la informática a través del desarrollo de los diferentes temas de la asignatura. 4. OBJETIVOS, TEMAS Y SUBTEMAS. Tema I: La estructura de un programa C++ y los proyectos. 1. La organización de un programa C/C++. 2. La escritura de una aplicación y la estructura de un programa en C++. 1. Organización de un programa C/ C++ 2. Escritura de una aplicación 3. La estructura de un programa C++ 4. Proyectos 5. Implementación de clases Tema II: El lenguaje C++: elementos básicos. 1. Identificar los diferentes elementos básicos del Lenguaje C++. Pag 3
1. Estructura general de un programa en C++ 2. Creación de un programa 3. Compilación, enlace y ejecución 4. Los elementos de un programa en C++ 5. Tipos de datos estándar en C++ 6. Constantes 7. Variables 8. Entradas y salidas Tema III: Operadores 1. Identificar una expresión. 2. Saber cuales son los operadores aritméticos, de asignación, relacionales, lógicos, de manipulación de bits y operadores especiales que se utilizan en C++. 1. Expresiones 2. Operadores aritméticos 3. Operadores de asignación 4. Operadores relaciónales 5. Operadores lógicos 6. Operadores de manipulación de bits 7. Operadores especiales Conversiones de tipos 8. Prioridad y asociatividad Tema IV: Estructura de control. 1. Aplicar correctamente las estructuras repetitivas, selectivas y de bifurcación de control en la solución de problemas en C++. 1. Sentencia while 2. Sentencia do-while 3. Sentencia for Sentencia if e if else 4. Sentencia switch Sentencias break y continue 5. Función exit Pag 4
6. Sentencia goto Tema V: Funciones. 1. Identificar los diferentes elementos que componen una función. 2. Saber declarar, definir e invocar una función. 3. Resolver problemas computacionales aplicando funciones. 4. Resolver problemas computacionales utilizando las funciones inline y recursivas. 1. Declaración de una función (prototipos) 2. Definición de una función 3. Llamada a una función 4. Funciones que devuelven valores(sentencia return) 5. El tipo void Argumentos por defecto Paso de parámetros 6. Parámetros referencia y llamada por referencia 7. Variables globales y locales Clases de almacenamiento 8. Variables tipo registro 9. Funciones inline 10. Recursividad Tema VI: Introducción a las clases y objetos. 1. Conocer las ventajas de la programación orientada a objetos. 2. Identificar una clase y un objeto. 3. Conocer la clase string y la clase ios 1. Programación orientada a objetos 2. Ventajas de la programación orientada a objetos 3. Abstracción de datos 4. Clases y objetos 5. Aplicación de las clases 6. La clase string 7. La clase ios Tema VII: Archivos Pag 5
1. Conocer como se abre y cierra un archivo. 2. Saber cuando es más conveniente utilizar archivos de texto o archivos de datos binario. 1. E /S por archivos 2. Archivos de texto 3. Archivos de datos binarios 4. Que hacer si hay problemas? Manejo de la impresora Tema VIII: Estructura de datos. 1. Saber como definir un arreglo y se accesa a los elementos de un arreglo. 2. Saber como se inician los elementos de un arreglo. 3. Saber realizar las distintas operaciones con arreglos unidimensionales y multidimensionales. 4. Utilizar el operador de dirección y el operador de indirección. 5. Saber cuando es más conveniente hacer uso de los arreglos y de los punteros. 6. Aplicar la aritmética de punteros en la solución de problemas. 7. Realizar operaciones con cadenas. 8. Saber como se define una variable estructura y como accesar a los miembros de una estructura. 9. Saber como se inicializa una estructura y como se asigna una estructura. 10.Aplicar las uniones y las uniones anónimas en la solución de problemas. 1. Arreglos: Definición, acceso a los elementos de los arreglos, inicialización de un arreglo, operaciones con arreglos y arreglos multidimensionales. 2. Punteros: Operador de dirección (&), acceso a la variable apuntada, operador de indirección ( ), arreglos y punteros en columna, aritmética de punteros, uso de const en declaración de punteros, paso de arreglos a funciones y declaraciones typedef. 3. Cadenas: Concatenación de cadenas, copiar cadenas, concatenar cadenas (strcat, strncat), comparar cadenas (strcmp, strncmp), longitud de una cadena (strlen), buscar en cadenas (strchr, strstr, y strpbrk), arreglos de cadenas y entrada y salida de cadenas. 4. Estructuras: Definición de una variables estructura, acceso a miembros de la estructura, inicialización de l estructuras, asignación de estructuras y estructuras anidadas. Uniones. Uniones anónimas. 5. PLAN TEMÁTICO Pag 6
CURSO REGULAR DIURNO Y NOCTURNO No. TEMAS CT S CP LAB. PC T E.I TOTAL 1 La estructura de un programa C++ y los proyectos. 2 El lenguaje C++: Elementos básicos. 3 Operadores 4 Estructura de control. 5 Funciones. 6 Introducción a las clases y objetos. 7 Archivos. 8 Estructuras de datos. 6. ORIENTACIONES METODOLÓGICAS 7. SISTEMA DE EVALUACIÓN Dos exámenes parciales que corresponden al 50 % cada una de la calificación final. Para el primer a como establece el reglamento se debe acumular de 30 40 % de evaluaciones sistemáticas para un total de 100%. Para el segundo parcial el sistema es el mismo, pero se Pag 7
podrá acumular hasta un 50% si se asigna a los estudiantes un pequeño proyecto de curso. 8. BIBLIOGRAFÍA 1. Borland C++ 4 / 4.5 Iniciación y Referencia. Luis Joyanes Aguilar. Editorial McGraw Hill. 2. Programación en C. Byron S-.Gottfried. Ed. McGraw Hill. 9. RELACIÓN DE AUTORES 1. Esp. Rubén Adair 10. APROBACIÓN 1. Firma del presidente de la comisión: 2. Lic. Ma. Mercedes Selva U. 3. Jefa del Depto de Matemática Educ. 4. Fecha de su aprobación: Pag 8