algoritmos estructur..

Anuncio
DISEÑO CURRICULAR
ALGORITMOS, ESTRUCTURAS Y PROGRAMACIÓN I
FACULTAD (ES)
CARRERA (S)
CÓDIGO
112643
ELABORADO POR:
Ingeniería
Computación y Sistemas
HORAS
TEÓRICAS
02
HORAS
PRÁCTICAS
02
REVISADO POR:
UNIDADES DE
CRÉDITO
03
SEMESTRE
II
FECHA:
PRE-REQUISITO
INTRODUCCIÓN
El programa de Algoritmos, Estructuras y Programación I, está desarrollado para centrar en el conocimiento de las herramientas básicas
para la organización y manipulación de datos. Para ello se presentan las estructuras de datos fundamentales y los diversos algoritmos clásicos
que actúan sobre ellas, con especial atención a los conceptos de abstracción y encapsulado. Mediante su estudio y análisis, además de conocer
los métodos más usuales y sus características, se adquiere la técnica necesaria para la comprensión y evaluación de algoritmos más complejos y
la capacidad de razonar cuál es la solución más adecuada para unas especificaciones concretas.
OBJETIVO (S) GENERAL (ES)
Al Finalizar el curso de Algoritmos, Estructuras y Programación I, el alumno tendrá la capacidad de conocer la filosofía de la
Programación básica y estructurada orientada a la utilización del lenguaje de programación C y C++.
UNIDAD I: introducción a la lógica de programación y diseño programas en lenguaje c
OBJETIVO: Conocer los elementos principales de la lógica de programación y el diseño de un programa, utilizando una metodología
propuesta y la implementación del lenguaje C.
OBJETIVOS
CONTENIDO
ESPECÍFICOS
Desarrollar habilidades
en el análisis de
algoritmos
Desarrollar programas
bajo la Estructura
General de un programa
Describir las Estructuras
de Control
Estudiar Metodología
General de Desarrollo de
Programas
De f in ic i o ne s b ás ic a s
A n á li s is de un pr o b le ma - - D i se ñ o d e A l g o r i t mo
– C o n ce p t o - C a r a ct e r í st i ca s
D es cr ip ci ón - H e r r a m i en t a d e pr o g r a ma ci ón Di a g r a ma de F lu jo
P se u do có d ig o
E st r u ct u r a Ge n e r a l d e u n P r og r a ma
-Datos y tipos de datos - Tipos de datos
Simples y estructurado - Constantes y variables
Expresiones: aritméticas, lógicas, cadena, prioridad
operadores
Instrucciones: asignación, E/S, control
Palabras reservadas - Identificadores
Comentarios - Declaraciones
E st r u ct u r a s de c o nt r o l
Flujo de control de un programa Estructura:
Secuencial - Selectiva Simple, doble, múltiple
Repetitiva
Repetir (bucle controlado por un contador)
Mientras (bucle controlado por centinela)
Desde Sentencia de salto
M et od o l og í a d e P r og r a m a c ió n
Proceso de Análisis de un Problema
Solución de un Problema aplicando lógica de programación
Actividades a realizar para el desarrollo de un programa
Realización de diversos ejercicios de aplicación
ACTIVIDADES/
ESTRATEGIAS
DE
APRENDIZAJE
Resolución de
ejercicios que
reafirmen los
Conocimientos.
Prácticas en el
laboratorio utilizando
el lenguaje de C, C++
RECURSOS
REQUERIDOS
Video Beam
Guías de, Estudio
Grupos de internet,
interactividad de
guías digitales
Bibliografía
Recomendada
ACTIVIDADES/
ESTRATEGIAS
DE
EVALUACIÓN
PESO %
EVALUACIÓN
Trabajos en Grupos
Talleres
Prueba escrita
Prácticas en el
laboratorio
20 %
UNIDAD II: Introducción a la programación modular y la estructura de datos lineales
OBJETIVO: Diseñar programas utilizando procedimientos, funciones y estructuras de datos
OBJETIVOS
ESPECIFICOS
Introducir la estructura
de un programa
procedimientos y
funciones
Introducir a la estructura
de datos lineales
Utilizar ordenación,
búsqueda e intercalación
interna de datos
CONTENIDO
Programación Modula: Procedimientos y Funciones
Introducción a la programación modular
Criterios de descomposición modular
Llamadas a los módulos - Tipos de subprogramas
Funciones
Funciones predefinidas - Declaración de funciones - Llamadas a las
funciones
Procedimientos
Declaración de procedimientos
Llamadas de procedimientos
Visibilidad de las variables
Intercambio de información paso de parámetros
Programación con estructura de datos lineales. Arrays
Arrays Unidimensionales: Vector
Declarar variable tipo vector
Referencia a los elementos de un vector
Acceso secuencial al vector (recorrido)
Declaración de tipos de datos
Utilización de vectores
Actualización de un vector
Arrays dedos dimensiones
Arrays multidimensional
Registros
Declaración de registros - Referencia a los componentes de un registro Arrays de registros
Ordenación, Búsqueda e intercalación interna. Ordenación Interna
Burbuja (Por intercambio directo)
Por inserción directa y binaria
Por selección directa
Método de inserción por incremento decreciente (Shell)
Búsqueda
Secuencia - Binaria o dicotómica
Transformación de claves (hash)
ACTIVIDADES/
ESTRATEGIAS
DE
APRENDIZAJE
Resolución de
ejercicios que
reafirmen los
Conocimientos.
Prácticas en el
laboratorio utilizando
el lenguaje de C, C++
RECURSOS
REQUERIDOS
ACTIVIDADES
/
ESTRATEGIAS
DE
EVALUACION
Video Beam
Trabajos en Grupos
Grupos de internet,
interactividad de
guías digitales
Prueba escrita
Guías de, Estudio
Bibliografía
Recomendada
PESO %
EVALUACIÓN
Talleres
Prácticas en el
laboratorio
20 %
UNIDAD III: Manejo de cadenas de caracteres y tipos abstractos de datos (TAD)
OBJETIVO: Utilizar el manejo de cadena de caracteres y TAD
OBJETIVOS
ESPECIFICOS
CONTENIDO
Utilizar cadenas de
caracteres en un
programa
Cadena de Caracteres - Datos
alfanuméricos - Cadenas de caracteres
Variables de cadena - Operaciones con
cadena - Operaciones de relación con
cadenas - Concatenación
Funciones de cadena
Función de longitud() - Función
deposición() - Función de subcadena()
Otras (insertar, borrar, cambiar)
Funciones de conversión
Tipos Abstractos de Datos
Qué son TAD - Tipos TAD
TAD Lineales
TAD Pila
Modelo de pila - Especificación correctas Implementaciones
Análisis de eficiencia - Aplicaciones
TAD Cola
Modelo de cola - Especificación correctas Implementaciones
Análisis de eficiencia - Aplicaciones
TAD Lista
Operaciones - Clasificación
Simples enlazadas - Circulares
Doblemente enlazadas - Doblemente
enlazadas circulares
Especificación correctas –
Implementaciones - Análisis de eficiencia Aplicaciones
Manipular los Tipos
Abstractos de
Datos(TAD) y Lograr una
concepción general y un
uso eficiente del TAD
Pila, Cola, Lista
ACTIVIDADES/
ESTRATEGIAS DE
APRENDIZAJE
Resolución de ejercicios
que reafirmen los
Conocimientos.
Prácticas en el laboratorio
utilizando el lenguaje de
C, C++
RECURSOS
REQUERIDOS
Video Beam
Guías de, Estudio
Grupos de internet,
interactividad de
guías digitales
Bibliografía
Recomendada
ACTIVIDADES/
ESTRATEGIAS DE
EVALUACION
PESO %
EVALUACIÓN
Trabajos en Grupos
Talleres
Prueba escrita
Prácticas en el
laboratorio
30 %
UNIDAD IV: Tipos abstractos de datos (TAD) no lineales
OBJETIVO: Aplicar los tipos abstractos de datos (TDA) no lineales
OBJETIVOS
ESPECIFICOS
CONTENIDO
Manipular los Tipos
Abstractos de Datos(TAD)
no lineales
Tipos Abstractos de datos no
lineales Árboles
Descripción del TDA Árbol
Especificación
Características
Implementación
Ejemplos
Descripción Árbol Binario
Especificación
Implementación
Recorridos
Búsquedas
Ejemplos
Árboles Binarios de Búsqueda
Árboles parcialmente ordenados
Tipos Abstractos de datos no
lineales Grafos
Descripción de los Grafos
Especificación
Clasificación
Dirigido, No dirigido
Búsqueda
Recorrido
Lograr una concepción
general y un uso eficiente
del TAD Árboles
Lograr una concepción
general y un uso eficiente
del TAD Grafos
ACTIVIDADES/
ESTRATEGIAS
DE
APRENDIZAJE
Resolución de
ejercicios que
reafirmen los
Conocimientos.
Prácticas en el
laboratorio utilizando
el lenguaje de C, C++
RECURSOS
REQUERIDOS
ACTIVIDADES/
ESTRATEGIAS DE
EVALUACION
Video Beam
Trabajos en Grupos
Grupos de internet,
interactividad de
guías digitales
Prueba escrita
Guías de, Estudio
Bibliografía
Recomendada
PESO %
EVALUACIÓN
Talleres
Prácticas en el laboratorio
30 %
BIBLIOGRAFIA
Arnold K., Gosling J., Holmes D. El lenguaje de programación Java. Addison Wesley. 2001
Arnold, K., Gosling, J., Holmes, P. (2001). "El lenguaje de programación Java" Pearson Educación. 3ª edición.
Eckel B., Piensa en Java.. Prentice Hall, 2000.
Hebert Schildt ( 2002 ) Fundamentos de la Programacion en Java. Mc Graw Hill
Joyanes, Luis (2002 ) Programación en Java Mc Graw Hill
Meyer, B., Construcción de software orientado a objetos, 2nd edición, Prentice-Hall, 1999
Weiss, Mark (2000). "Estructuras de datos en Java". Addison-Wesley. ISBN 84-7829-035-4
Witzenfeld, A. (2005). "Ingeniería de Software Orientado a Objetos con UML, Java e Internet ".
Contenido Programático de: ALGORITMOS, ESTRUCTURAS Y PROGRAMACIÓN I
Este programa es copia fiel y exacta del original que reposa en nuestros archivos.
Vigente para el período ____________
Doy Fé en Maracaibo a los _______ días del mes de ___________ del año ________
Nombres: __________________________________________________________
Apellidos:___________________________________________________________
C.I.: _____________________ Carrera: INGENIERIA EN COMPUTACIÓN
Confrontado
Revisado
SECRETARIA
Descargar