Estructura de programacion
-
Upload
carlos-rudas-ramirez -
Category
Documents
-
view
43 -
download
6
description
Transcript of Estructura de programacion
![Page 1: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/1.jpg)
ESTRUCTURA DE INFORMACIONESTRUCTURA DE INFORMACION
Creditos : 3Horas semanales: 4Prerequisitos : Lenguaje de programacion I
Profesor: Carlos A. Ruiz De La Cruz MeloCorreo : [email protected]
UNIVERSIDAD INCA GARCILASO DE LA VEGAFacultad de Ingeniería de Sistemas, Computo y Telecomunicaciones
![Page 2: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/2.jpg)
TEMARIOPRIMERA PARTE
1.TAD
2.Filas secuenciales
3.Arreglos
4.Listas
5.Otras estructuras dinámicas
EXAMEN PARCIAL
1
![Page 3: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/3.jpg)
TEMARIOSEGUNDA PARTE
1.Pilas y Colas
2.Arboles binarios
3.Arboles AVL
4.Arboles B
5.Grafos
EXAMEN FINAL
2
![Page 4: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/4.jpg)
EVALUACION
Promedio Final = ( EP + EF + PP) / 3
Promedio de practicas (PP)
• 3 notas de practicas calificadas• 2 notas trabajos calificados opcionales
PP= ( nota1 + nota2 + asistencia) / 3
3
Las 2 notas mas altas (nota1 y nota2)
![Page 5: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/5.jpg)
UNIVERSIDAD INCA GARCILASO DE LA VEGAFacultad de Ingeniería de Sistemas, Computo y Telecomunicaciones
AsignaturaEstructura de Información
Tema
Tipos Abstractos de Datos
Profesor: Lic. Carlos A. Ruiz De La Cruz MeloCorreo : [email protected]
![Page 6: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/6.jpg)
Abstracción
Problema
Modelo
abstracción
Problema de la vida real
Problema de la vida real, tomando solo los detalles esenciales
![Page 7: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/7.jpg)
Abstracción
MODELO •datos•operaciones
Se tiene una propia perspectiva del problema
![Page 8: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/8.jpg)
Abstracción- ejemploEn la FISC se hará un programa que contenga la información de todos los alumnos para posteriormente usarlo en procesos netamente académicos:
padres amigos
nombre
dni
dirección
pasatiempos
Pareja sentimental
edad
Color de pelosexo
INFORMACION DEL ALUMNO
ABSTRACCIONdninombredirecciónedadsexo
![Page 9: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/9.jpg)
Abstracción- ejemploEl modelo necesita herramientas para manipular la información necesaria.
• Operación para registrar un alumno• Operación para reporte de alumnos• Operación para reporte de alumnos por sexo• Operación para sacar a un alumno de la BD
![Page 10: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/10.jpg)
Abstracción- ejemploMODELO FINAL
abstracción
dninombredirecciónedadsexo
ALUMNO
• Registrar_alumno• Reporte _alumnos• Reporte_alumnos_sexo• Sacar_alumno_BD
![Page 11: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/11.jpg)
Observando el modelo
dninombredirecciónedadsexo
• Registrar_alumno• Reporte _alumnos• Reporte_alumnos_sexo• Sacar_alumno_BD
Tipo Abstracto de Dato
ALUMNO
dni enteronombre cadenaDirección cadenaedad enterosexo entero
Tipos simples de datos
Interface
![Page 12: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/12.jpg)
Tipos de datos
TAD o tipos compuestos
entero
cadena
caracter
reales
Lógico
Tipos simples
![Page 13: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/13.jpg)
08153500Juan Peña TorresJr. Carmen 234, Surco21masculino
08153500Juan Peña TorresJr. Carmen 234, Surco21masculino
08153500Juan Peña TorresJr. Carmen 234, Surco21masculino
08153500Juan Peña TorresJr. Carmen 234, Surco21masculino
Estructura de DatosForma de organizar un conjunto de datos simples para facilitar la manipulación de estos datos como un todo o individualmente.
ALUMNOEsta entidad define la estructura de datos de un conjunto de elementos
08456070María Coral GuerraJr. German 453, Breña18femenino
08356578Jose Rojas RodriguezJr. Lucas 123, Lince23masculino
![Page 14: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/14.jpg)
TADEs una entidad , con un solo identificador, constituido por datos de otro tipo.
Características
• Exporta un tipo• Exporta un conjunto de operaciones (interface)• Las operaciones es el único medio de acceso al TAD
ALUMNOdatos
operaciones
![Page 15: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/15.jpg)
Utilidad de los TADLa información se presenta en forma organizada y estructurada
ente
ro cadena
caracter
realesLógico Registrar_alumno
Reporte _alum
nos
Reporte_alumnos_sexo
Sacar_alumno_BD
entero
cadena
caracter
reales
Lógico
Sacar_alumno_BD
Reporte _alumnos
Reporte_alumnos_sexo
Registrar_alumno
La información no aparece de manera aislada en forma de datos simples.
![Page 16: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/16.jpg)
PROGRAMAR
PROGRAMAR ESTRUCTURADE DATOS
ALGORITMOS= +
Secuencia de tareas que realizan una tarea
Representación:• Diagramas de flujo• pseudocódigo
![Page 17: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/17.jpg)
ALGORITMORepresentación en modo texto que se aproxima al código fuente final.
Escritura rápida de representaciones de algoritmos.
Procedimiento XXX():Fin_XXX
procedure XXXbegin:end;
void XXX(){:}
LENGUAJE PASCAL
LENGUAJE C++
![Page 18: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/18.jpg)
SINTAXIS EN ALGORITMOS
Expresiones
Instrucciones
métodos
• Aritméticas• Relacionales y Lógicas
• Funciones• Procedimientos
• Declaración de variables• Asignación• Lectura / escritura• Selectiva• Selectiva múltiple• Repetitivas
Tipos de datos• Simples• TAD
![Page 19: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/19.jpg)
TIPOS DE DATOS
Tipos de datos
TAD
• entero• real• cadena• carácter• lógico
especificación Nombre_TAD usar // tipos TAD’s de datos que se usan variable // declaración de variables operaciones // operaciones con sus parámetros significado // explicación de los métodosfin_TAD
![Page 20: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/20.jpg)
EXPRESIONES
Aritméticas
Ejemplos:
suma + 23b + c * 20cantidad[ índice]total
Relacionesy Lógicas
Ejemplos:
dato > suma (a = b ) y (c <= 20)total !=cantidad[ indice]
![Page 21: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/21.jpg)
Procedimientos procedimiento Nombre_Procedimiento(v1 , v2, ….,vN) tipo de dato : v1
tipo de dato : v2
:
tipo de dato : vN
: // instrucciones :fin_Nombre_Procedimiento
Funciones funcion Nombre_Función(v1 , v2, ….,vN): tipo tipo de dato : v1
tipo de dato : v2
:
tipo de dato : vN
: // instrucciones :fin_Nombre_Función
![Page 22: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/22.jpg)
Declaración de variables
Tipo de dato : nombre de variableEjemplo
lógico : salir, encontró entero: valor, a, cantidad real : dato
Asignación
nombre de variable expresiónEjemplo
salir encontró + 5 b a total dato[ posición]
![Page 23: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/23.jpg)
Leer(lista de variables)
Ejemplos leer(dato, valor, cantidad) leer(posicion)
Lectura
Escritura
escritura(lista de variables/constantes)
Ejemplos escribir(dato, 56, “MARIA”) escribir(cantidad, a)
Selectivasi (expresión) entonces // instrucciones sino // instruccionesfinsi
![Page 24: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/24.jpg)
Selectivamúltiple
en caso sea (variable/constante) hacer caso 1: // instrucciones caso 2: // instrucciones : sino: // instruccionesfincaso
Repetitivas
mientras (expresión ) hacer // instruccionesfin_hacer
repetir // instruccioneshasta (expresión)
desde variable=variable/kte hasta expresión // instruccionesfin_desde
![Page 25: Estructura de programacion](https://reader035.fdocuments.ec/reader035/viewer/2022062512/552efb814a7959b95b8b4ab7/html5/thumbnails/25.jpg)
BIBLIOGRAFIATenenbaum A. M., Langsam Y., Augenstein,M.A., (1993) Estructura de Datos
Joyanes Aguilar Programación en C++: algoritmos, estructuras de Datos y Objetos
Cairó O., Guardati M.C. S., (2002) Estructura de Datos
Schildt H., (1994) Turbo C/C++ Manual de Referencia, Una información completa ideal para todo usuario de Turbo C/C
Allen Weiss, M., (1995) Estructura de Datos y Algoritmos, México D.F., Addison- Wesley Iberoamericana
Brassard, G., Bratley, P., (1998) Fundamentos de Algoritmia