Programa de estudio

Datos Generales

Institución
Universidad Veracruzana


Área académica
Económico-Administrativa

Programa educativo
Informática

Facultad
Contaduría y Administración

Región
Córdoba-Orizaba

Nombre de la Experiencia Educativa
Algoritmos y Estructura de Datos I

Área curricular
Iniciación a la Disciplina

Proyecto Integrador
Tecnología computacional y educativa

Academia
Algoritmos y Programación

Requisito(s)
Prerequisito(s): se recomienda haber cursado
Corequisito(s): se recomienda haber cursado

Modalidad
Curso

Características del Proceso-Aprendizaje
Grupal

Número Mínomo: 10
Número Máximo: 35

Número de Horas de la Experiencia Educativa
Teóricas: 5
Prácticas: 1

Total de Créditos:
11

Total de Horas:
90

Fecha de Elaboración
Julio de 2002

Fecha de Modificación
Julio de 2003

Académicos que participaron en la elaboración/modificación
MCC Virginia Lagunes Barradas
MCC Armando Pérez Flores
MCC María de los Ángeles Arenas Valdéz

Perfil del Docente
Lic. Informática ó carrera afín, preferentemente con posgrado en el área de la computación, con experiencia en programación y cursos de formación docente.

Espacio
Aula y Centro de Cómputo

Relación Disciplinar
Interdisciplinar

Descripción Mínima
Este curso – taller se encuentra en el área básica de iniciación a la disciplina, debido a que se presentan los conceptos fundamentales sobre algoritmos y programación, haciendo énfasis en las metodologías de desarrollo de algoritmos, herramientas de representación y estructuras básicas de control y de datos. Se pondrá especial interés en la solución de problemas, en el diseño de la solución y la implantación abstracta y encapsulada del mismo sobre un lenguaje de programación.

Justificación
El desarrollo de algoritmos a través de una metodología adecuada y el manejo de los conceptos básicos de programación son  indispensables en la formación de cualquier profesional en el área de la computación, ya que en él se forman las primeras capacidades y habilidades para la solución de problemas.

Unidad de Competencia
Comprende y aplica  los conceptos básicos de desarrollo de algoritmos y programación,   plantea alternativas de solución utilizando las herramientas adecuadas y las codifica, todo esto de forma creativa y colaborativa.
Desarrolla aplicaciones de software, utilizando fuertemente la lógica básica de programación con estructuras de control y abstracción de datos.

Articulación con los Ejes
El estudiante adquiere conocimientos sobre los conceptos básicos de desarrollo de algoritmos y programación (eje teórico), mediante el planteamiento, diseño y codificación de algoritmos como solución de problemas (eje heurístico) en forma creativa y colaborativa (eje axiológico).

Saberes

Teóricos
1. Conceptos Básicos
    1.1. Algoritmo y sus características
    1.2. Programa
    1.3. Lenguaje de programación
    1.4. Dato
    1.5. Información
    1.6. Paso para la resolución de problemas algorítmicos
 

2.Metodología para la resolución de algoritmos
    2.1. Análisis (definición de salida, entrada y proceso)
    2.2. Diseño (herramientas de diseño: diagrama de caja y flujo, Pseudocódigo)

    2.3. Prueba de escritorio
    2.4. Codificación
    2.5. Validación
 

3. Programación estructurada
    3.1. Conceptos relacionados
           - Tipos de Datos
           - Identificador
           - Variable
           - Constante
           - Expresiones
           - Operadores
    3.2. Estructuras de control 

        3.2.1. Estructura secuencial
            3.2.2. Estructuras selectivas
                      - Selectiva simple
                      - Selectiva Doble
                      - Selectiva múltiple
            3.2.3. Conceptos
                      - Acumulador

                      - Contador
                      - Centinela
                      - Bandera
                      - Ciclo
                      - Iteración
            3.2.4. Estructuras repetitivas

                      - Mientras
                      - Repite
                      - Para
 

4. Elementos básicos de lenguaje de programación
    4.1. Estructura de un programa
    4.2. Definición de variables
    4.3. Codificación de las estructuras de control

    4.4. Ambiente de programación
 

5. Datos estructurados estáticos
    5.1. Vectores
    5.2. Cadenas
    5.3. Matrices
    5.4. Registros
 

6. Programación Modular
    6.1. Módulo
    6.2. Diseño descendente
    6.3. Procedimientos
    6.4. Funciones
    6.5. Paso de parámetros
    6.6. Tipos de paso de parámetros
    6.7. Implantación de un módulo (Construcción de unidades) 


Heurísticos
  • Comprensión de manera clara y precisa los conceptos básicos de la programación
  • Planteamiento y solución a problemas algorítmicos
    Comprensión y aplicación de cada una de las fases en la resolución de algorítmos
  • Comprensión y aplicación correcta los conceptos
  • Diseño de soluciones, utilizando las estructuras de control, y herramientas de diseño (Diagrama de Caja y Pseudocódigo), verificando que la solución sea la correcta.
    Selección y uso adecuado de las estructuras de datos y de control necesarias para cada tipo de problema
    Uso de un lenguaje de programación y su entorno para codificar y probar algorítmos
  • Selección y uso de los tipos de datos estructurados necesarios para diferentes problemas
    Comprensión y aplicación de los conceptos de programación modular
    Desarrollo de un proyecto que integre los conocimientos adquiridos en esta experiencia educativa(este deberá incluir: programación utilizando unidades, con funciones y procedimientos y uso de estructuras como: arreglos, registros y cadenas. 

 Axiológicos
  • Creatividad
  • Colaboración
  • Responsabilidad
  • Respeto
  • Apertura


Estrategias Metodológicas

De Aprendizaje
  • Búsqueda y consulta de fuentes de información.
  • Lectura, síntesis e interpretación.
    Análisis y discusión de casos.
    Mapas conceptuales.
  • Planteamiento de hipótesis..
    Analogías.
    Discusiones grupales en torno de los mecanismos seguidos para aprender y las dificultades encontradas.
  • Aprendizaje basado en problemas.
    Estudio de casos 


 De Enseñanza
  • Organización de grupos colaborativos
  • Dirección de prácticas.
    Tareas para estudio independiente.
  • Discusión dirigida.
  • Exposición con apoyo tecnológico variado.
  • Enseñanza tutorial. 


    Apoyos Educativos

    Material Didáctico
    • Programa de la experiencia educativa.
    • Manuales del lenguaje (impresos y en línea).
    • Bibliografía de la experiencia educativa.
    • Documentación en línea 


     Recurso Didáctico
    • Espacio educativo adecuado.
    • Pintarrón y marcadores para usos varios.
    • Equipo de cómputo con software requerido (compilador de los lenguajes).
    • Video proyector. 


       Evaluación del Desempeño

      Evidencia de desempeño
      • Participación en foros (10%)
      • Programas sencillos (10%)
      • Proyectos de integración parciales y final. (20%)
      • Exámenes escritos que deberán incluir preguntas teóricas (20%) y resolución de algoritmos ( 40%)


      Criterio de Desempeño
      • Funcionamiento correcto y eficiente de los programas realizados como tareas o prácticas
      • Presentación y exposición clara, completa, correcta y documentada de los proyectos integradores.
      • Resolución acertada de reactivos


      Campos de Aplicación
      • Grupos de trabajo dentro del aula y centro de cómputo 


       Acreditación

       Mediante la entrega oportuna de programas y proyectos integradores, NOTA: Información complementaria en docto. impreso


      Fuentes de Información


      Básica
      1. Joyanes Aguilar, Luis. Fundamentos de Programación. Mc Graw Hill (1997)
      2. Cormen, Leiserson, Rives. Introduction to Algorithms. Mc Graw Hill (2001).
      3. Manual del Lenguaje Pascal ( ayuda en línea) 


      Complementaria
      1. Joyanes Aguilar Luis. Estructura de datos. Algoritmos, abstracción y Objetos. McGraw Hill (1998)
        Turbo Pascal 7: Manual de Referencia, Stephen O' Brien, Steve Nameroff ; tr., Carlos Cervigon Rückauer,O'Brien, Stephen, McGraw-Hill(1993)