You are on page 1of 16

FACULTAD DE INGENIERÍA Y ARQUITECTURA

SILABO

CURSO: ALGORITMO Y ESTRUCTURA DE DATOS I

I DATOS GENERALES

1.1 Escuela : Ingeniería de Sistemas / Ing. Industrial.

1.2 Departamento Académico : Ingeniería y Arquitectura.

1.3 Semestre Académico : 2000-I

1.4 Código : 090053

1.5 Ciclo : Tercero.

1.6 Créditos : 05.

1.7 Horas Semanales : 07 (Teoría: 04 - Laboratorio: 03).

1.8 Prerrequisitos : INTRODUCCIÓN A LA COMPUTACIÓN.

II SUMILLA

El curso es teórico-práctico e introduce al alumno en la tecnología de objetos y


fundamentalmente en el diseño e implementación de algoritmos. Permite al estudiante, antes
de programar, concebir la solución del problema y construir un modelo de clases a un nivel de
abstracción alto en principio, para luego definir con detalle las características (datos) y el
comportamiento de las clases modeladas, vía el análisis de sus interrelaciones, lo que daría
como consecuencia el diseño de los mensajes (operaciones) necesarios. El modelamiento de
los problemas será hecho por los profesores de Teoría y Laboratorio en pizarra y aplicando la
notación UML. De esta forma la asignatura contribuirá a la formación de profesionales con
capacidad de análisis para la solución de problemas. El desarrollo del curso comprende los
fundamentos de le teoría de objetos, elementos de modelamiento, tipos de datos, variables, el
entorno de trabajo de un lenguaje visual orientado a objetos, estructuras de control de flujo,
contadores, acumuladores, vectores y matrices, así como la interfaz gráfica de usuario.

III OBJETIVOS

Objetivos Generales

1. Comprender que la tecnología de objetos es un medio de solución de problemas.

2. Explicar las diferentes formas de organizar los datos en la memoria del computador.

3. Aplicar los algoritmos para la creación y manipulación de las Estructuras de datos y objetos.

4. Destacar la importancia de las Estructuras de control en el desarrollo de aplicaciones


básicas.

Objetivos Específicos

1. Aplicar como instrumento de diseño algorítmico una herramienta CASE que soporte UML.

2. .El alumno será capaz de plantear e implementar la solución de problemas informáticos.


3...Implementar algoritmos a través de un lenguaje de Programación Visual Orientado a
Objetos.

4. .Identificar la tecnología de objetos como un medio de solución de problemas.

IV PROGRAMACIÓN DE CONTENIDOS

UNIDAD I: FUNDAMENTOS DE PROGRAMACIÓN Y MODELAMIENTO

CONTENIDOS PROCEDIMENTALES

· Elaborar modelos de clases.

· Aplicar tipos de datos y operadores a problemas algorítmicos.

· Representar el mundo real con la notación UML.

CONTENIDOS ACTITUDINALES

· Asumir detalles no contemplados en la descripción de un problema planteado.

· Expresar las soluciones como modelos con notación UML.

CONTENIDOS CONCEPTUALES

PRIMERA SEMANA

Primera Sesión

· Introducción a la teoría de objetos, Conceptos básicos.

· Clases, objeto/instancia. Diferencia Atributos o variable, datos.

Segunda Sesión

· Variable, tipos de datos primitivos. Operadores.

· Estructura de un programa en Java.

· Concepto de método: método constructor, método principal.

· Salida de datos por consola.

Fuentes:

Material de clase de la Facultad.

Editorial: Universidad de San Martín de Porres.

Año: 2002.

Análisis y Diseño Orientado a Objetos.

Grady Booch.

Editorial Adisson Wesley / Díaz de Santos (1994).

Págs.: 32-86, 95-110.

Aprendiendo java.
Laura Lemay, Charles Perkins.

Editorial Sams Net / Prentice Hall (1995).

Págs.: 20-28.

SEGUNDA SEMANA

Primera Sesión

· Fundamentos de Operaciones, mensajes y métodos.

· Métodos, clasificación:

Métodos sin tipo: no devuelven nada (void).

· Métodos void que no reciben parámetros.

· Métodos void que reciben parámetros.

Métodos tipeados: devuelven un valor.

· Métodos tipeados que no reciben parámetros.

· Métodos tipeados que reciben parámetros.

· Instanciando un clase (en el método main( )).

Segunda Sesión

· Necesidad del diseño de soluciones Informáticas.

· Modelamiento con 2 paquetes: Dominio de la Aplicación y Utilitarios.

· Ingreso de datos, el paquete: utilitarios y la clase Math2.

Fuentes:

UML gota a gota.

Martin Fowler - Kendall Scott.

Editorial Addison Wesley Longman.

Págs.: 1-13, 61-73, 116-120, 127-135.

Modelado y Diseño Orientado a objetos.

James Rumbaugh / otros.

Editorial Prentice Hall (1996).

Págs.: 1-25.

UML Toolkit.

Hans-Erik Eriksson.

John Wiley & Sons, INC (1998).

Págs.: 1-45.

Separatas del curso.

Universidad de San Martín de Porres.


FIA

UNIDAD II: ESTRUCTURAS DE CONTROL DE FLUJO DE PROGRAMAS

CONTENIDOS PROCEDIMENTALES

· Elaborar programas en un entorno de orientación a objetos.

· Confeccionar programas con estructuras de control de flujo.

· Aplicar estructuras de decisión en problemas algorítmicos.

· Componer soluciones complejas con estructuras de decisión y cíclicas.

· Simular todo tipo de situaciones del mundo real.

CONTENIDOS ACTITUDINALES

· Valorar las técnicas de modelamiento para su implementación en código.

· Expresar las soluciones con código a partir de modelos con notación UML.

· Participar con opiniones en las clases de implementación en código.

· Expresar las soluciones con estructuras de control de flujo.

CONTENIDOS CONCEPTUALES

TERCERA SEMANA

Primera Sesión

· Algoritmos, fundamentos.

· Seudocódigo, diagramas de flujo.

· Estructuras de decisión simple: if ( ).

· Aplicaciones con modelamiento.

· Diagrama de paquetes.

Segunda Sesión

· Estructuras de decisión doble: if ( ). . . else.

· Introducción a la estructura de decisión múltiple: switch ( ).

· Aplicaciones combinadas de estructuras de control de flujo.

Fuentes:

Programación en java 2.
John Zukowski.

Editorial Anaya Multimedia (1999).

Págs.: 87-102.

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Págs.: 90-95.

Aprendiendo Java.

Laura Lemay, Charles Perkins.

Editorial Sams Net / Prentice Hall (1996).

Págs.: 42-60.

Metodología de la Programación.

Luis Joyanes.

Editorial Mc Graw Hill (1992).

Págs.: 11-44.

CUARTA SEMANA

Primera Sesión

· Aplicaciones con estructuras de decisión múltiple y anidada.

· Modelamiento completo de clases:

Dominio de la aplicación.

Dominio del Problema.

· Diseño de la Aplicación.

· Contadores y acumuladores.

Segunda Sesión

· Estructuras cíclicas: do. . . while ( ), while ( ), for ( ).

· Diagrama de secuencias.

Fuentes:

Aprendiendo Java.

Laura Lemay, Charles Perkins.

Editorial Sams Net / Prentice Hall (1996).

Págs.: 60-66.

Como programar en java.

Deitel & Deitel.


Editorial Prentice Hall (1996).

Págs.: 55-90.

Separatas del curso.

Universidad de San Martín de Porres.

FIA.

QUINTA SEMANA

Primera Sesión

· Aplicaciones de contadores y acumuladores con do while ( ). Ejercicios.

· Modelamiento de todos los casos.

Segunda Sesión

· Desarrollo de aplicaciones con estructuras do while ( ).

· Modelamiento de todos los casos.

Fuentes:

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Pags: 66-72.

Aprendiendo Java.

Laura Lemay, Charles Perkins.

Editorial Sams Net / Prentice Hall (1996).

Pags: 83-84.

Guía de Programación en C++.

Julio Vasquez.

Facultad de Ingeniería de Computación y Sistemas.

Universidad de San Martín de Porres (1998).

Pags: 8-37.

Diseño de Programación.

Julio Vasquez.

Editorial San marcos (1996).

Pags: 1-35.

Metodología de la programación.

Osvaldo cairo.

Editorial Computec (1996).


Pags: 89-120, tomo 1.

SEXTA SEMANA

Primera Sesión

· La estructura cíclica while( ).

· Ejercicios.

· Modelamiento e implementación de casos con while( ).

Segunda Sesión

· La estructura cíclica for( ).

· Ejercicios.

· Modelamiento e implementación de casos con for( ).

Fuentes:

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Pags: 122-126.

Aprendiendo Java.

Laura Lemay, Charles Perkins.

Editorial Sams Net / Prentice Hall (1996).

Pags: 85-86.

Guía de Programación en C++.

Julio Vasquez.

Facultad de Ingeniería de Computación y Sistemas.

Universidad de San Martín de Porres (1998).

Pags: 41-53.

Diseño de Programación.

Julio Vasquez.

Editorial San marcos (1996).

Pags: 38-60.

SEPTIMA SEMANA

Primera Sesión

· Seminario I: Estructuras de control de flujo combinadas (repetitivas / decisión).

· Uso intensivo de contadores y acumuladores.


· Modelamiento e implementación.

Segunda Sesión

· Seminario I: Estructuras de control de flujo combinadas (repetitivas / decisión).

· Uso intensivo de contadores y acumuladores.

· Modelamiento e implementación.

Fuentes:

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Pags: 72-90, 127-144.

Guía de Programación en C++.

Julio Vasquez.

Facultad de Ingeniería de Computación y Sistemas.

Universidad de San Martín de Porres (1998).

Pags: 57-85.

Diseño de Programación.

Julio Vasquez.

Editorial San marcos (1996).

Pags: 60-120.

Fundamentos de Programación.

Luis Joyanes.

Editorial Mc Graw Hill (1996).

Pags: 70-84.

Metodología de la programación.

Osvaldo cairo.

Editorial Computec (1996).

Pags: 209-227, tomo 1.

OCTAVA SEMANA

Primera Sesión

· Seminario II: Estructuras de control de flujo combinadas (repetitivas / decisión).

· Uso intensivo de contadores y acumuladores.

· Modelamiento e implementación.

Segunda Sesión
· Seminario II: Estructuras de control de flujo combinadas (repetitivas / decisión).

· Uso intensivo de contadores y acumuladores.

· Modelamiento e implementación.

Fuentes:

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Pags: 114-122.

Guía de Programación en C++.

Julio Vasquez.

Facultad de Ingeniería de Computación y Sistemas.

Universidad de San Martín de Porres (1998).

Pags: 89-105.

Aprendiendo Java.

Laura Lemay, Charles Perkins.

Editorial Sams Net / Prentice Hall (1996).

Pags: 86-90.

NOVENA SEMANA

EXAMEN PARCIAL.

UNIDAD III: MANEJO DE ARREGLOS

CONTENIDOS PROCEDIMENTALES

· Construir programas con arreglos.

· Aplicar estructuras de almacenamiento volátil.

·.Representar mediante estructuras de arreglos el almacenamiento de datos.

CONTENIDOS ACTITUDINALES

· Aceptar la aplicación de arreglos en el manejo de múltiples juegos de datos.

· Expresar las soluciones con datos múltiples mediante el almacenamiento de datos en


arreglos.
CONTENIDOS CONCEPTUALES

DECIMA SEMANA

Primera Sesión

· Manejo de cadenas como vectores.

· Ejercicios.

Segunda Sesión

· Vectores: Fundamentos, ejemplos.

· Aplicaciones.

Fuentes:

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Pags: 214-219.

Guía de Programación en C++.

Julio Vasquez.

Facultad de Ingeniería de Computación y Sistemas.

Universidad de San Martín de Porres (1998).

Pags: 109-127.

Programación en java 2.

John Zukowski.

Editorial Anaya Multimedia (1999).

Pags: 129-134.

Problemas de la metodología de la Programación.

Luis Joyanes.

Editorial Mc Graw Hill (1996).

Pags: 165-180.

Fundamentos de Programación.

Luis Joyanes.

Editorial Mc Graw Hill (1996).

Pags: 205-214.

Metodología de la programación.

Osvaldo cairo.

Editorial Computec (1996).


Pags: 477-490, tomo 2.

DECIMA PRIMERA SEMANA

Primera Sesión

· Operaciones con vectores.

· Búsqueda secuencial, consultas.

Segunda Sesión

· Métodos para la modificación de datos.

· Ejercicios.

Fuentes:

Guía de Programación en C++.

Julio Vasquez.

Facultad de Ingeniería de Computación y Sistemas.

Universidad de San Martín de Porres (1998).

Pags: 128-141.

Programación en java 2.

John Zukowski.

Editorial Anaya Multimedia (1999).

Pags: 135-144.

Fundamentos de Programación.

Luis Joyanes.

Editorial Mc Graw Hill (1996).

Pags: 215-236.

Metodología de la programación.

Osvaldo cairo.

Editorial Computec (1996).

Pags: 515-534, tomo 2.

DECIMA SEGUNDA SEMANA

Primera Sesión

· Métodos de clasificación (burbuja).

· Operaciones de mezcla.

· Aplicaciones.

Segunda Sesión
· Búsqueda avanzada: búsqueda binaria.

· Aplicaciones.

Fuentes:

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Págs.: 231-236.

Problemas de la metodología de la Programación.

Luis Joyanes.

Editorial Mc Graw Hill (1996).

Págs.: 257-286.

DECIMA TERCERA SEMANA

Primera Sesión

· Introducción a la GUI. Creación de Applets.

· Componentes AWT: Label, TextField, Button y List.

Segunda Sesión

· Vectores paralelos usando GUI.

· Aplicaciones.

· Pase de Vectores como parámetros en los métodos.

· Ejercicios.

Fuentes:

Programación en java 2.

John Zukowski.

Editorial Anaya Multimedia (1999).

Págs.: 645-646.

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Págs.: 486-493.

DECIMA CUARTA SEMANA

Primera Sesión

· Matrices bidimensionales.
· Fundamentos.

· Ejercicios.

Segunda Sesión

· Aplicaciones con Matrices bidimensionales.

Fuentes:

Programación en java 2.

John Zukowski.

Editorial Anaya Multimedia (1999).

Págs.: 645-646.

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Págs.: 486-493.

DECIMA QUINTA SEMANA

Primera Sesión

· La clase Vector.

· Sus métodos, ejercicios.

Segunda Sesión

· Aplicaciones con la clase Vector.

Fuentes:

Java 2.

Manual de usuario y tutorial.

Agustín Froufe Quintas.

Editorial Alfaomega – Rama.

Pág.: 52.

DECIMA SEXTA SEMANA

Primera Sesión

· Aplicaciones combinadas con arreglos.

Segunda Sesión

· Seminario de problemas.

Fuentes:
Programación en java 2.

John Zukowski.

Editorial Anaya Multimedia (1999).

Págs.: 726-755.

Como programar en java.

Deitel & Deitel.

Editorial Prentice Hall (1996).

Págs.: 493-531.

DECIMA SEPTIMA SEMANA

EXAMEN FINAL

V PROCEDIMIENTOS DIDÁCTICOS

Las clases se realizarán basadas en:

· Aspecto metodológico: Estimulando la participación activa de los ..estudiantes, mediante el


desarrollo de ejercicios individuales y/o de ..grupo, entonces el docente orientará el trabajo
grupal y fomentará ..la investigación, creatividad y originalidad en la confección de las ..tareas.

· Procedimientos: Observación del mundo real, análisis y diseño ..para la solución de


problemas.

· Técnicas: Expositiva, diálogo y lluvia de ideas.

VI EQUIPOS Y MATERIALES

· Equipos: Computadora, Proyector Multimedios. Materiales: ..Separatas y transparencias.

· Materiales: Texto base (Deitel & Deitel. Como programar en java), ..Separatas, URL’s, pizarra

VII EVALUACIÓN

Consta de prácticas calificadas con trabajos (PP), una nota de laboratorio (LAB), un examen
parcial (EP) y un examen final (EF). El promedio final se obtiene de la siguiente manera:

P F = PP + LAB + E P + E F * 2

Los alumnos que no tengan nota de laboratorio no podrán rendir examen final.
Los trabajos entregados fuera de fecha, estarán sujetos a puntos en contra.

En laboratorio los alumnos desarrollarán un proyecto que se les planteará después del examen
parcial, el cual será evaluado en su avance hasta la finalización del ciclo.

VIII. FUENTES DE INFORMACIÓN

A. TEXTO BASE

Deitel & Deitel Como programar en Java.

Prentice Hall.

1996.

B. BIBLIOGRAFÍA COMPLEMENTARIA

UNIDAD I

1. Martin Fowler UML gota a gota.

Addison Wesley Longman, 1999.

2. Hans-Erik Eriksson UML Toolkit.

John Wiley & Sons, INC 1998.

UNIDAD II

3. Luis Joyanes Problemas de Metodología de la Programación.

Mc Graw Hill, 1996.

4. Luis Joyanes Fundamentos de Programación.

Mc Graw Hill, 1996.

5. Luis Joyanes Metodología de la Programación.

Mc Graw Hill, 1992.

6. Osvaldo Cairo Metodología de la Programación.

Tomos I y II.

Computec, 1996.

7. José López Fundamentos de Programación.

Paraninfo, 1998.

UNIDAD III

8. Osvaldo Cairo Metodología de la Programación.


Tomos I y II.

Computec, 1996.

9. Luis Joyanes Metodología de la Programación.

Mc Graw Hill, 1992.

10. Julio Vásquez Diseño de programación en Pascal, 200 algoritmos.

Imprenta papelera S.A., 1995.

11. Julio Vásquez Guía de Programación en C++.

Facultad de Ingeniería de Computación y Sistemas.

Universidad de San Martín de Porres, 1998.

12. Julio Vásquez Diseño de Programación.

Editorial San Marcos, 1996.

You might also like