La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Tema 2 Tipos abstractos de datos. 2.4 Construcción de un TAD a partir de otro.

Presentaciones similares


Presentación del tema: "Tema 2 Tipos abstractos de datos. 2.4 Construcción de un TAD a partir de otro."— Transcripción de la presentación:

1 Tema 2 Tipos abstractos de datos. 2.4 Construcción de un TAD a partir de otro.

2

3 Construcción de un TAD a partir de otro (I). Se puede construir un TAD a partir de otro. Ejemplo: TAD Vector de enteros (TadVector). Construido a partir de TAD Pila de enteros (TadPila). El usuario imagina y trabaja con algo que se comporta como un vector sin conocer su construcción interna (ocultamiento).

4 Construcción de un TAD a partir de otro (II). Métodos de objeto: crearVector (). Crea e inicializa el vector sobre el que opera. Establece su tamaño (tamaño). leerVector (pos). Devuelve el valor del elemento del vector cuya posición (pos) se pasa como argumento. escribirVector (pos, cont). Modifica el dato que ocupa la posición (pos) con el contenido (cont) que se pasan como argumentos. tamaño (). Devuelve el tamaño del vector.

5 Interfaz del nuevo TAD import java.io.*; public interface Vector { void crearVector () throws NumberFormatException, IOException; int leerVector (int posicion) throws PilaVacia; void escribirVector (int posicion, int contenido) throws PilaVacia; int tamaño (); }

6 Construcción del TAD public class TadVector implements Vector { Pila vector; public int tamaño; public void crearVector () throws NumberFormatException, IOException { int i; BufferedReader linea = new BufferedReader (new InputStreamReader (System.in)); Pila auxv = new TadPila (); System.out.println ("Numero de elementos: "); tamano = Integer.parseInt (linea.readLine ()); for (i = 1; i <= tamaño; i++) auxv.apilar (0); vector = auxv; } ……………………………… public int tamaño () { return tamaño; }

7 Utilización del nuevo TAD import java.io.IOException; public class PruebaTadVector { public static void main (String [ ] args) throws NumberFormatException, IOException, PilaVacia { Vector v = new TadVector (); int d,i; v.crearVector (); v.escribirVector (5, 77); v.escribirVector (3, 87); v.escribirVector (8, 97); for (i = 1; I <= v.tamaño (); i++) { d = v.leerVector (i); System.out.println ("El dato de la posicion + i + " es: + d); }


Descargar ppt "Tema 2 Tipos abstractos de datos. 2.4 Construcción de un TAD a partir de otro."

Presentaciones similares


Anuncios Google