DEMAT

 

 DEMAT

Elementos de ciencias de la computación

Contenido sugerido


1. Las Computadoras como Herramientas: sistemas operativos (Windows, Linux, OSX …), manejo de archivos y directorios, herramientas básicas de internet, procesadores de texto.

2. Estructura de las computadoras: Calculadoras, sistema binario, circuitos lógicos, memorias, programa almacenado, ciclo de operación, arquitectura de Von Neumann, conceptos de lenguaje de máquina, ensambladores, compiladores, encadenadores (linkers), ambientes integrados de programación, diseño de programas.

3. Elementos básicos de programación en un lenguaje moderno (por ejemplo C, C++, Java, Python … ). Por ejemplo, de elegirse el lenguaje C: Variables: tipos, asignaciones, apuntadores (direcciones de memoria), operaciones aritméticas, funciones: paso de parámetros por valor, direcciones como parámetros; efectos secundarios, operadores condicionales, lazos; variables globales, arreglos: vectores, matrices, arreglos multidimensionales, manejo de archivos: archivos de texto y archivos binarios.

4. Las estructuras equivalentes en otro lenguaje de programación.

 

1. Introducción a las computadoras.
1.1. Historia.
1.2. Arquitectura.


2. Diseño de Algoritmos.
2.1. Diagramas de flujo.
2.2. Control de flujo.
2.2.1. Estructura de control condicional.
2.2.2. Ciclos While, Do While, For.
2.2.3. Switches.


3. Lenguaje de programación C.
3.1. Estructuras de control.
3.1.1. If.
3.1.2. While, Do While, For.
3.1.3. Switches.
3.2. Arreglos y apuntadores.
3.2.1. Introducción a los arreglos de datos y estructura interna en memoria.
3.2.2. Declaración y manejo de arreglos de datos.
3.2.3. Cadenas de caracteres.
3.2.4. Apuntadores.
3.2.5. Manejo de memoria dinámica.
3.2.6. Apuntadores a variables.
3.3. Funciones.
3.3.1. Declaración de funciones.
3.3.2. Pasó de parámetros variables a funciones.
3.3.3. Apuntadores a funciones y funciones callback.
3.3.4. Liberaría estándar de C.
3.3.5. Creación de librerías propias (Archivos .h y .c).


4. Recursividad.
4.1. Definición.
4.2. Procedimientos recursivos.
4.3. Ejemplos de casos recursivos.


5. Estructuras lineales.
5.1. Listas. Operaciones básicas con listas.
5.2. Pilas. Representación en memoria estática y dinámica. Operaciones básicas con pilas.
5.3. Colas. Operaciones básicas con colas.


6. Algoritmos de Ordenamiento.
6.1. Ordenamiento de burbuja.
6.2. Ordenamiento por inserción.
6.3. Quicksort.

 

 

Sugerencias de Bibliografia

 

  1. D.E. Knuth. The Art of Computer Programming, volume 1. Addison Wesley Longman Publishing Co. 3rd. edition. 1997.
  2. B. Gottfried. Programación en C. Mc Graw Hill. 1996.
  3. B.W. Kernighan, D.M. Ritchie. El Lenguaje de Programación C, Prentice Hall. 1988.
  4. The C Primer. Hancock y Krieger. Mc Graw Hill. 
  5. H. Koffman. Problem solving and program design in C. Addison Wesley.