Tipos de Datos Abstractos (III) Clase #23 Introducción a la Programación.

Slides:



Advertisements
Presentaciones similares
Ejercicio: 1.- Dado el siguiente esquema: Art1 Art2 Art3
Advertisements

Tema 5 Sentencias básicas. Sentencia –Línea de código en C Básicas –Entrada de datos desde el teclado –Salida de datos por la pantalla –Asignación de.
GRAFOS ESTRUCTURAS DE DATOS.
MANUAL EXPRESS DE C J.M.sevilla.
TDA LISTA ESTRUCTURAS DE DATOS.
Unidad 5 Listas Enlazadas Bibliografía: Algoritmos y Estructuras de datos de Aguilar y Martinez. Unidad 9 Autor: Ing Rolando Simon Titiosky.
Listas enlazadas c++ Prof. Franklin Cedeño.
Estructuras de datos y algoritmos
Repaso para la construcción del intérprete 2012
Estructuras de control
Programación I Teoría III
Programación, Algoritmos y Estructuras de Datos
Estructuras de datos y algoritmos
EJERCICIOS DE PROGRAMACION
Procesadores de Lenguajes I
INFORMATICA I Funciones CLASE 13.
CS1101X Programming Methodology
ESTRUCTURA DEL LENGUAJE C
Programación Estructurada
Aprende C en una lluviosa tarde de domingo (en algo más de un par de horas) Sintaxis del lenguaje C para implementar un programa imperativo.
Algoritmos y Estructuras de Datos
Abstracción de Datos La abstracción es un recurso fundamental en la programación orientada a objetos y está además fuertemente ligado a reusabilidad.
M.I.A Daniel Alejandro García López.  Un TDA es un tipo de dato definido por el programador que se puede manipular de un modo similar a los tipos de.
Unidad 3 Punteros.
Oscar Bedoya. Edificio 331, 2º piso, E.I.S.C. Estructuras de datos y algoritmos.
Ejemplos en C /* Ejemplos L/E en C con printf y scanf */ #include #include main(){ int i; int i; char nombre[30]; char nombre[30]; printf ("\nIntroduce.
Genericidad Los datos de aplicaciones muy diferentes puede modelarse con frecuencia a partir de tipos de datos cuyas operaciones no dependen del tipo de.
String o Cadenas Prof. Gonzalo Pastor. Cadenas o String ► En C, una cadena o texto se define como un vector de caracteres de longitud determinada que.
Método en Java.
Funciones “En C” Semestre de Otoño 2006 Claudio Gutiérrez-Soto.
Programación I Teoría VI: Recursividad
Estructuras dinámicas de datos, TAD Lista, parte 2
Programa “Coordenadas” Ing. Arturo Díaz Vargas Departamento de Sistemas División de Ciencias Básicas e Ingeniería UNIVERSIDAD AUTONOMA METROPOLITANA.
Tema 9 Estructuras.
Archivos Programación.
Semana 5 Subprogramas..
Tema 7c Entrada y salida de funciones. Funciones Funcion Entradas SalidasTareas.
Características de “C”
Características de “C” Y Esta conformado por un Ambiente Integrado. Y Es un Lenguaje de Nivel medio. Y Es un compilador. YContiene un conjunto de palabras.
Ejemplo Supongamos que queremos realizar un sistema que trabaje con figuras geométricas planas. El sistema debe poder mostrar información de una figura.
ÁRBOLES BINARIOS DE BÚSQUEDA
C++ LISTAS C++ 11/04/2017 Ing. Edgar Ruiz Lizama.
Cadenas y apuntadores Programación.
Archivos Binarios Lenguaje C Prof. Gonzalo Pastor.
Programación III Clase 06 Funciones.
CI TEORIA semana 4 Estructura Algorítmica: SELECCIÓN
Archivos.
Estructuras.
Estructura de Datos y Algoritmos
Introducción a la Programación
El lenguaje de programación C - Identificadores y variables – Isidro González Caballero ( Introducción.
Estructuras de Datos Dinámicas: Listas Programación I Departamento de Informática Universidad Nacional de San Luis Argentina 2014.
Introducción a la Programación “El lenguaje C” Manuel Crisosto M., Claudio Gutiérrez S., Christian Vidal C.
FUNCIONES Conceptos básicos. Retorno de una función Clases de funciones. Paso de parámetros. Funciones y arrays.
Unidad 4: LISTAS.
Introducción a la Programación “El lenguaje C” Semestre de Otoño 2006 Claudio Gutiérrez-Soto.
Acerca del curso Nombre del curso Créditos: Profesor Teoría:
Estructuras de datos Fundamentos de análisis y diseño de algoritmos.
INTRODUCCIÓN AL LENGUAJE C++. Instrucciones Temas.
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings
LENGUAJE “C” Programación.
Fundamentos de Programación
CICLOS EN C – PARTE 3.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Tipo.
Clase 1 Gabriela Araya Baez.. Char: Variable que almacena caracteres. Int: Variable que almacena enteros. Float: Variable que almacena decimales. Doble:
1 ListaUna Lista se define como una serie de N elementos E 1, E 2,..., E N, ordenados de manera consecutiva, es decir, el elemento E k (que se denomina.
Introducción al Lenguaje C (II) Cadenas de caracteres, archivos de cabecera, lectura y escritura Fundamentos de Programación Departamento de Lenguajes.
Introducción al Lenguaje C (I) Tipos básicos, arrays y punteros Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión
Lenguaje de Programación II Prof. Rafael Montenegro B. Carrera: T.S.U en Informática Periodo: 2014-I.
Funciones y paso de parámetros Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Unidad Didáctica 24.
Transcripción de la presentación:

Tipos de Datos Abstractos (III) Clase #23 Introducción a la Programación

2 Resumen de la última clase Vimos los beneficios de los TDAs Ocultar complejidad, simplificar programas Permiten a un grupo de personas trabajar sobre el mismo programa Cada TDA tiene constructores y selectores Estamos analizando el ejemplo del sistema manejador de CDs y cassettes TDA Registro: CrearRegistro, TituloRegistro,, InterpreteRegistro, RegistroVacio, ImprimirRegistro TDA Lista: CrearLista, Insertar, Primero, Siguiente, Imprimir, BuscarT, BuscarI, Borrar

3 Manejador de CDs y cassettes: Declaración de estructuras de datos typedef struct { char titulo[LARGO_STR]; char interprete[LARGO_STR]; } Registro; typedef struct { Registro registros[MAX_LISTA]; } Lista;

4 Programación de CrearLista e Insertar elemento en lista Lista CrearLista() { int id; Lista l; for(id = 0; id < MAX_LISTA; id++) { l.registros[id] = CrearRegistro("",""); } return l; } Lista Insertar(Lista l, Registro r) { Id id=0; while (! RegistroVacio(l.registros[ id])) id++; if (id < MAX_LISTA-1) l.registros[id]=r; return l; }

5 Programación de Buscar por Intérprete #define Id int Id BuscarI(Lista l, Id inicio, char* interp) { int id, listo=FALSE; /* Recorre a partir de inicio buscando interprete */ id = inicio; while (!listo && !RegistroVacio(l.registros[id])) { if (strcmp(InterpreteRegistro(l.registros[id]), interp)==0) /* Se encontro el interprete */ listo = TRUE; else id++; } /* Si se encontro interprete retorna indice */ if (listo) return(id); else return(FIN); }

6 Ejercicio: Borrar un elemento de la lista L Lista Borrar(Lista l, Id regId) { int id; id = regId; do { l.registros[id] = l.registros[id+1]; id++; } while (! RegistroVacio(l.registros[id])); return l; }

7 Ejercicio: dado el siguiente programa, escriba su correspondiente TDA main(){ int respuesta; Complejo c1,c2,c3; c1 = CrearComplejo(3,4); c2 = CrearComplejo(5,6); c3 = CrearComplejo(3,4); printf("\nQue desea hacer con los numeros complejos ingresados?\n"); printf("suma=1 resta=2 multiplicacion=3: "); scanf("%d", &respuesta); if(respuesta==1) { c3 = sumaC(c1,c2); ImprimirComplejo(c3); } if(respuesta==2) { c3 = restaC(c1, c2); ImprimirComplejo(c3); } if(respuesta==3) { c3 = multiplicaC(c1, c2); ImprimirComplejo(c3); } }