Introducción a la Programación

Introducción a  la  Programación junto con Algoritmos y Estructuras de Datos son materias que conforman el tronco principal dentro del área de computación para la formación del futuro graduado, ya que aportan los conocimientos teórico-prácticos para el diseño y desarrollo de programas, fomentando la tarea creativa como una actividad metódica y sistemática, exigiendo la definición del problema, modelo de resolución, selección de loa algoritmos, diseño e implementación de la solución e interpretación de los resultados.

Al aplicar estos conocimientos en la solución de problemas de otras disciplinas, permite la interrelación e integración entre las distintas áreas curriculares. De este modo, los docentes de cada área podrán planificar tareas y trabajos en donde se estimule al alumno a aplicar herramientas de programación para la resolución de problemas. Verticalmente se correlaciona directamente con Algoritmos y Estructuras de Datos.

 

Contenidos Mínimos

Algoritmos y estructuras de datos elementales. Introducción a la POO. Estructuras de control, funciones, cadenas de caracteres, arreglos estáticos.

 

Programa Analítico

Unidad 1: Introducción a la Programación

Concepto de algoritmo. Algoritmos computacionales: pseudocódigo  y diagramas de flujo. Programa. El proceso de compilación.  Compiladores e intérpretes. Depuración y documentación de programas. Lenguajes de Programación: tipos y características. Paradigmas de programación.

Unidad 2: Introducción al Lenguaje C++

Estructura de un programa C++ estándar y su compilación. Make y makefie. Tokens del lenguaje. Constantes. Variables. Ámbito de validez de las variables. Flujos de entrada y salida.

Unidad 3: Expresiones y Lógica de Control

Operadores en C++. Jerarquía de los operadores. Construcción de expresiones. Estructuras  de control: condicional (if), de casos múltiples (switch), iterativas (while, do-while, for).  Resolución de problemas mediante programas C++. Edición, prueba y depuración de programas empleando un compilador C++ estándar.

Unidad 4: Funciones

Prototipo e implementación de una función C++.  Pasaje de parámetros por valor y por referencia. Funciones predefinidas y desarrollo de archivos de inclusión o encabezado. Sobrecarga de funciones. Modularidad: creación de librerías con funciones. Problemas de programación empleando funciones.

Unidad 5: Arreglos Estáticos y Estructuras

Arreglos lineales y multidimensionales. Arreglos como parámetros de funciones.  Operaciones con arreglos. Structs. Definiciones de tipo empleando structs. Combinaciones de de estructuras de datos: arreglos de structs, structs que incluyen arreglos como miembros. Resolución de problemas mediante programas.

Unidad 6: Punteros en C++  y c-strings

Operadores dirección e indirección. Operaciones con punteros. Notación de punteros con arreglos. Punteros a funciones. Punteros dinámicos. Ejercicios y problemas con punteros. Dimensionamiento  dinámico de arreglos. Estructura de un string al estilo C o c-strings. Punteros y c-strings. Funciones predefinidas para manejo de c-strings.  Resolución de problemas mediante programas.

Unidad 7: Introducción a la POO

Modelo conceptual de la Programación Orientada a Objetos (POO). El modelo de Objetos en C++.  Clases.  Diseño de clases. Encapsulamiento.  Constructores y destructores.  Resolución de casos empleando el modelo de la POO

Unidad 8: Flujos de Entrada y Salida

Las clases fstream para definir entrada y salida desde un programa C++. Archivos de texto. Modos de apertura y operación de un archivo de texto. Manipuladores. Resolución de problemas mediante programas. Archivos binarios. Definición. Creación. Organización. Formato. Acceso aleatorio.

 

Equipo de cátedra

Profesor responsable: Ing. Horacio Loyarte.

Profesor adjunto: Bioing. Analía Cherniz.

Jefe de trabajos prácticos: Bioing. Yanina Atum

         Ing. Iván Peralta

         Ing. José Luis Caropressi

Auxiliar de primera: Bioing. Gabriel Filipowicz

Auxiliares de segunda: Guillermo Daniel

    Agustín Cortés

    Fabián Corrales Cousiño