Departamento academico de informatica



Descargar 53,29 Kb.
Fecha de conversión15.02.2017
Tamaño53,29 Kb.
UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO

FACULTAD DE CIENCIAS QUÍMICAS, FISICAS Y MATEMATICAS

DEPARTAMENTO ACADEMICO DE INFORMATICA
SILABO


  1. DATOS GENERALES:

    1. Nombre de la asignatura Algorítmica I

    2. Categoría de la asignatura OE

    3. Código de la asignatura IF421AIN

    4. Número de créditos 04

    5. Número de horas teóricas 03

    6. Número de horas prácticas 02

    7. Requisito (s) Introducción a la Informática

    8. Horario y aula Ma –Ju 07- 09 y Vi 07-08 IN102

    9. Semestre Académico 2009-1

    10. Carrera Profesional de servicio Ingeniería Informática y de Sistemas

    11. Docentes Ing. Julio César Carbajal Luna

Ing. Javier Arturo Rozas Huacho

    1. E-Mail Docente jccarbajall@unsaac.edu.pe

  1. SUMILLA

La asignatura propone una introducción a la disciplina de la algorítmica siguiendo un enfoque semi formal, dentro del paradigma imperativo, en el que se presentan al estudiante los conceptos elementales de la algorítmica sin ligarse en ningún momento a un lenguaje de programación concreto, sino utilizando una notación algorítmica estructurada cuyas características se van introduciendo progresivamente a lo largo del curso.

Esta asignatura tiene como finalidad desarrollar habilidades y adquirir destrezas para la concepción, diseño e implementación de algoritmos, haciendo uso de las metodologías de programación. Ejes temáticos: Estructuras de control, modularidad y recursividad, estructuras de datos, archivos y apuntadores.



  1. OBJETIVOS

Identificar los elementos para la construcción de algoritmos..

Diseñar algoritmos eficaces y eficientes que permiten resolver problemas de mediana complejidad.



Codificar los algoritmos en un lenguaje de programación de alto nivel.


  1. CONTENIDOS POR UNIDADES DIDACTICAS




  1. UNIDAD DIDACTICA 1




      1. ESTRUCTURAS DE CONTROL BÁSICAS:

      2. OBJETIVOS ESPECIFICOS

Dominio y distinción de los conceptos fundamentales: algoritmo, programa y proceso.

Conocer los conceptos y las etapas generales involucradas en la construcción y ejecución de un programa.

Conocer los mecanismos básicos de composición de algoritmos: secuenciación, análisis de casos, iteración y recursión.

Comprender el concepto de especificación de un algoritmo y conocer el lugar que ocupa en el diseño de algoritmos, en contraposición a la implementación

Conocer las características generales que rodean a un lenguaje de programación: paradigmas, sintaxis, semántica y modos de traducción

Leer y explicar algoritmos de manera transparente, en relación con los problemas que soluciona

Dar cuenta de la pertinencia de un algoritmo, para la solución de un problema

Dar cuenta del proceso de construcción algorítmica como un proceso de expresión lógica.

Hacer un uso apropiado de las estructuras de control en el diseño e implementación de algoritmos para la solución de problemas.




      1. CONTENIDO (4 semanas)

CAPÍTULO I: MAQUINAS QUE PROCESAN ALGORITMOS



    1. Introducción

    2. El computador, una máquina que procesa algoritmos. Algoritmo frente a programa. Algoritmos computables

    3. Noción de proceso y estado de un proceso

    4. Codificación de la información

    5. Lenguajes de programación

    6. La informática y su papel en la algorítmica

CAPÍTULO II: LEXICO Y ORGANIZACIÓN DE UN ALGORITMO



    1. Introducción

    2. Conceptos básicos: Variables, acciones, precondiciones y postcondiciones, constantes, léxico de un algoritmo, tipos de datos primitivos: dominio y operaciones. Entero, Real, Booleano, Carácter, Intervalos

    3. Acciones primitivas. La asignación. Las acciones de entrada y salida. Organización de las acciones. Tipos de datos no primitivos

    4. Estrategias para resolver problemas. Entienda el problema. Formule un plan. Ponga en práctica el plan. Revise y compruebe

    5. Etapas en la construcción de un programa. Analizar: Entender el problema, Modelo, Especificación del algoritmo. Diseñar: Descripción del algoritmo en pseudocódigo, Verificación del algoritmo. Codificación en un lenguaje de programación. Puesta en funcionamiento. Mantenimiento

CAPÍTULO III: ESTRUCTURAS DE CONTROL







    1. Introducción

    2. Estructuras secuenciales. Composición secuencial de acciones

    3. Estructuras selectivas. Análisis de casos. Análisis de casos en la notación algorítmica. Combinación de secuenciación y análisis de casos. Léxico, sintaxis y semántica. Sentencias selectivas anidadas y múltiples.

    4. Estructuras iterativas. La necesidad de iterar. Composición iterativa. Componentes de una iteración. Iteración Mientras. Diseño iterativo: noción de invariante. Esquema general de una iteración. Léxico, sintaxis y semántica.




      1. ACTIVIDADES: Proyecto de aplicación.

      2. MATERIAL EDUCATIVO: Materiales impresos y módulos de aprendizaje; direcciones electrónicas para recabar información especializada sobre los contenidos planteados. Pizarra, plumones, mota Proyector multimedia, computadora, presentaciones en power point.

      3. EVALUACION: Evaluación escrita (2 horas).




    1. UNIDAD DIDACTICA 2




      1. MODULARIDAD Y RECURSIVIDAD

      2. OBJETIVOS ESPECIFICOS

Entender el papel crucial que juega la abstracción en el desarrollo de un programa y aprender los distintos tipos de abstracción empleados en la disciplina de la programación: abstracción por parametrización, abstracción por especificación, abstracción de datos, abstracción de control, abstracción procedural y operacional.

Dominar las técnicas de diseño de algoritmos ascendente (empleando reutilización) y descendente (refinamiento por pasos sucesivos), y su combinación con los patrones procedimentales y los mecanismos básicos de descomposición de algoritmos

Entender el razonamiento inductivo y aprender la técnica recursiva para la definición de estructuras de datos y la construcción de procedimientos y funciones.

Identificar las acciones en las que se puede descomponer un problema.

Implementar las acciones como módulos

Entender como pensar en forma recursiva.

Aprender a rastrear una función recursiva.


      1. CONTENIDOS (4 semanas)

CAPÍTULO IV: MODULARIDAD





    1. Introducción

    2. Acciones. La utilización de las acciones. Acciones con parámetros. Ventajas de la parametrización.

    3. Abstracción y acciones

    4. Tipos de parámetros. Parámetros dato (o de entrada). Parámetros dato-resultado (o de entrada-salida).

    5. Funciones. Especificación, utilización, descripción. Diferencias entre acciones y funciones

CAPITULO V: RECURSIVIDAD





    1. Concepto de recursividad.

    2. Fundamentos del diseño recursivo. Tipos de recursividad. Esquema general de una función recursiva lineal.

    3. Técnicas de inmersión. Transformación en iterativa de la recursividad lineal.

    4. Diseño y verificación de algoritmos recursivos.

    5. Ejemplos del diseño recursivo.




      1. ACTIVIDADES: Proyecto de aplicación

      2. MATERIAL EDUCATIVO: Materiales impresos y módulos de aprendizaje; direcciones electrónicas para recabar información especializada sobre los contenidos planteados. Pizarra, plumones, mota Proyector multimedia, computadora, presentaciones en power point

      3. EVALUACION: Evaluación escrita 2 horas




    1. UNIDAD DIDACTICA 3




      1. ESTRUCTURA DE DATOS

      2. OBJETIVOS ESPECIFICOS

Conocer los principales patrones procedimentales (entrada-acción-salida, búsqueda, recorrido, etcétera), y ser capaces de identificarlos y concretarlos adecuadamente al tratar de resolver un problema.

Identificar las diferentes estructuras de datos.

Entender la pertinencia de los arreglos en la solución de variedad de problemas.

Proponer algoritmos que incorporen arreglos y estructuras de control que los manipulen, como soluciones a problemas.




      1. CONTENIDOS (4 semanas)

CAPÍTULO VI: ARREGLOS



    1. Estructuras de datos: Conceptos. Tipos de estructuras de datos: Estáticas, dinámicas.

    2. Tipo de dato arreglo.

    3. Tipo de dato registro

    4. Arreglos unidimensionales.

    5. Esquema de recorrido y búsqueda en arreglos.

    6. Algoritmos de ordenación y búsqueda.

    7. Arreglos multidimensionales.




      1. ACTIVIDADES: Proyecto de aplicación

      2. MATERIAL EDUCATIVO: Materiales impresos y módulos de aprendizaje; direcciones electrónicas para recabar información especializada sobre los contenidos planteados. Pizarra, plumones, mota Proyector multimedia, computadora, presentaciones en power point

      3. EVALUACION:



    1. UNIDAD DIDACTICA 4




      1. ARCHIVOS Y PUNTEROS

      2. OBJETIVOS ESPECIFICOS

Leer y escribir datos desde una unidad de almacenamiento secundario

Identificar los diferentes tipos de archivos y aplicarlos en la solución de problemas que requieran persistencia de datos.

Entender el concepto de apuntador

Implementar estructuras de datos dinámicas haciendo uso de apuntadores


      1. CONTENIDOS (4 semanas)

CAPÍTULO VII: ARCHIVOS

    1. Conceptos sobre persistencia de datos.

    2. Manejo del sistema de archivos

    3. Lectura y escritura de archivos

CAPÍTULO VIII: APUNTADORES









    1. Apuntadores. Constantes y operaciones elementales

    2. El tipo de dato apuntador. Acceso a datos mediante apuntadores

    3. Tipos de datos auto referenciados



      1. ACTIVIDADES: Proyecto de aplicación

      2. MATERIAL EDUCATIVO: Materiales impresos y módulos de aprendizaje; direcciones electrónicas para recabar información especializada sobre los contenidos planteados. Pizarra, plumones, mota Proyector multimedia, computadora, presentaciones en power point

      3. EVALUACION: Evaluación escrita 2 horas




  1. METODOLOGIA

Actividades de Aprendizaje

De Docencia (Responsabilidad del docente):

Situar al estudiante y a la práctica de la profesión de la ingeniería, en el contexto general de las Tecnologías Informáticas, y en especial de los algoritmos y su programación, y en el papel que ellas han jugado, juega y jugarán en quehacer del ingeniero en la sociedad.

Presentación de los conceptos básicos sobre los algoritmos y su codificación en un lenguaje de programación de alto nivel.

Diseño, preparación y solución de ejemplos tipo. Resolución de ejemplos tipo.

Diseño, preparación y solución de ejercicios propuestos.

Dirección del análisis de ejercicios propuestos en sesiones presenciales.

Tutorías y consejerías

De trabajo Colectivo (Responsabilidad de docentes y alumnos:)

Construcción de conceptos.

Solución de ejercicios propuestos.

Ejercicios de análisis y diseño.

Dar sentido al uso de las tecnologías informáticas.

De Estudio Independiente (Responsabilidad del estudiante):

Estudio de textos pertinentes a los temas: Algoritmos, métodos de solución de problemas, lenguajes de programación.

Revisión de los ejemplos resueltos.

Resolución de ejercicios propuestos.

Implementación en la computadora de los ejemplos estudiados en clase.

Lectura y escritura de narrativas que den cuenta del papel de las tecnologías informáticas y en especial del computador y su programación, como soluciones a problemas sociales.




  1. EVALUACION

Indicadores

Claridad y entendimiento de los conceptos.

Que se haya identificado correctamente el problema y que el modelo lo represente adecuadamente.

Que la solución diseñada resuelva el problema.

Apego a la formalidad y estándares requeridos.

Que el análisis de corrección sea exhaustivo.

Que el prototipo corresponda al algoritmo diseñado y no presente errores de sintaxis.

La asistencia a las clases

El esfuerzo y dedicación en la resolución de problemas.

Que la documentación permita reconocer la forma en que se ha abordado el problema y la estructura del programa implementado.

En las pruebas escritas se consideran en forma parcial los aspectos considerados en proyectos de programación bajo problemas que requieren un menor tiempo de desarrollo y en una modalidad que no requiere uso del computador, así como la comprensión conceptual.



Criterios de

Calificación



Las soluciones propuestas deben demostrar ser efectivas como soluciones a los problemas planteados.

Se valora tanto la calidad lógica de la solución como la aplicación de prácticas sanas de programación.

Se valora también el cumplimiento de las tareas propuestas en el término estipulado.


Instrumentos

Tres exámenes parciales ponderados de 0 a 20

Pruebas cortas no avisadas

Desarrollo de ejercicios prácticos

La evaluación se regirá a las disposiciones emanadas por la Oficina de Capacitación y Evaluación Académica (OCEA).

Se considerarán tres promedios parciales. Para cada promedio parcial se tomarán dos evaluaciones y se bonificarán con puntos a los estudiantes que cumplan con sustentar sus proyectos.

El promedio final se obtendrá por promedio aritmético simple de los tres promedios parciales.



Nota Final=(PP1+PP2+PP3)/3


  1. BIBLIOGRAFIA




  1. GRUPO LIEBRE. Algoritmica y programación. Un enfoque práctico. Editorial ALPHA. 2000.

  2. BALCAZAR, J. Programación Metódica. Mc Graw Hill. 1993.

  3. JOYANES, L. y otros. Estructura de datos. Libro de problemas. Mc Graw Hill. 1999.

  4. PEÑA, R. Diseño de Programas. Formalismo y Abstracción. Prentice Hall. 2005

  5. DROZDEK, A. Estructura de datos y algoritmos en Java. 2da. Edición. Thomson. 2007.

  6. KOFFMAN, E. / WOLFGANG, P. Estructura de datos con C++. Objetos, abstracciones y diseño. Mc. Graw Hill. 2008.

  7. GARCIA, J. y otros. Una Introducción a la Programación. Un Enfoque Algoritmico. Thomson Paraninfo. 2005.


La base de datos está protegida por derechos de autor ©absta.info 2016
enviar mensaje

    Página principal