Está en la página 1de 16

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

Laboratorio N 6
Escuela Profesional: Ingeniera de Sistemas. Docente: Loncn Salazar, Pierre Paul Asignatura: Estructura de datos

Sesin 6:

Mtodos de Ordenacin y Bsqueda

Ejercicio N 1:
1. Cree un proyecto con la siguiente estructura

2. En la clase llamada Arreglo_Numeros. a. Declare una variable tipo arreglo unidimensional llamada Arreglo de tamao 7 para almacenar nmeros enteros positivos y una variable tipo entera llamada i inicializada en 0.

b. Implemente un mtodo llamado setDato para agregar datos enteros dentro de este arreglo.

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

c. Implemente un mtodo llamado getDato para leer uno de los datos del arreglo segn la posicin.

d. Implemente un mtodo llamado Buscar_Dato que reciba un dato entero y busque dicho dato dentro del arreglo ya creado. Devolver la posicin del dato si lo encuentra y devolver -1 si no lo encuentra.

e. Cambia la programacin del mtodo setDato para que ahora utilice el mtodo Buscar_Dato y as evitar que se registren datos repetidos.

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

f. Implemente ahora un mtodo llamado OrdenarMayorMenor_Metodo01 que utilice el algoritmo estndar de ordenacin por burbuja. La ordenacin se realizar de mayor a menor.

g. Implemente dos mtodos llamados OrdenarMayorMenor_Metodo02 y OrdenarMayorMenor_Metodo03 que utilice un algoritmo mejorado de ordenacin por burbuja de tal forma que se detenga cuando detecte que la lista esta ordenada. La ordenacin se realizar de mayor a menor.

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

h. Implemente ahora un mtodo llamado getRegistrados que retorne el total de elementos registrados en el arreglo.

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

3. En la clase JFrame_Principal a. Disee un formulario con la siguiente apariencia y estructura.

b. Cree una instancia de la clase Arreglo_Numeros llamada Lista, y en el constructor coloque un cdigo que centre el formulario.

c. Implemente el cdigo del control btn_Registrar

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

d. Implemente el cdigo del control btn_Buscar

e. Implemente el cdigo del control btn_Ordenar

f. Implemente el cdigo del control btn_Listar

g. Implemente el cdigo del control btn_Cerrar

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

4. En la clase JDialog_Lista a. Disee un dialogo con la siguiente apariencia y estructura

b. Cree una instancia de la clase DefaultListModel llamada modLista, y en el constructor coloque un cdigo que centre el dilogo y asigne el modelo al control Lst_Lista.

c. Implemente el cdigo del mtodo Llenar_Lista

d. Implemente el cdigo del control btn_Cerrar

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

Ejercicio N 2:
1. Cree un proyecto con la siguiente estructura

2. En la clase llamada Cliente. a. Declare los atributos de la clase

b.

Implemente el constructor de la clase que recibir un valor tipo arreglo unidimensional de objetos (Registro) desde el cual se asignarn los valores a cada uno de los atributos de la clase.

c.

Implemente el mtodo getRegistro el cual devolver un arreglo unidimensional de objetos conteniendo todos los atributos de la clase.

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

d.

Implemente los mtodos getter y setter para cada atributo de la clase

3. En la clase llamada Arreglo_Clientes a. Declare una variable tipo arreglo unidimensional llamada Arreglo de tamao 7 para almacenar instancias de la clase Cliente. Adems declare una variable tipo entera llamada i inicializada en 0.

b. Implemente un mtodo llamado setElemento para agregar filas dentro de este arreglo.

Estructura de Datos

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

c. Implemente un mtodo llamado getElemento para leer una de las filas del arreglo segn el nmero de fila indicada.

d. Implemente un mtodo llamado ValidarEdad que reciba una fila y de ella validar la edad. Devolver verdadero si la validacin es correcta de lo contrario devolver falso.

e. Implemente un mtodo llamado Buscar_Codigo que reciba un dato entero y busque dicho dato dentro del arreglo ya creado. Devolver la posicin del dato si lo encuentra y devolver -1 si no lo encuentra.

f. Cambia la programacin del mtodo setElemento para que ahora utilice los mtodos Validar_Edad y Buscar_Dato y as evitar que se registren datos repetidos

Estructura de Datos

10

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

g. Implemente un mtodo llamado OrdenarMenorMayor_Nombre que utilice el algoritmo de ordenacin por seleccin. La ordenacin se realizar de menor a mayor.

Estructura de Datos

11

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

h. Implemente un mtodo llamado getRegistrados que retorne el total de elementos registrados en el arreglo.

4. En la clase llamada JFrame_Principal a. Disee un formulario con la siguiente apariencia y estructura.

b. Cree una instancia de la clase Arreglo_Clientes llamada Tabla, y en el constructor coloque un cdigo que centre el formulario

Estructura de Datos

12

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

c. Implemente el cdigo del control btn_Registrar

d. Implemente el cdigo del control btn_Buscar

e. Implemente el cdigo del control btn_Ordenar

f. Implemente el cdigo del control btn_Listar

g. Implemente el cdigo del control btn_Cerrar

Estructura de Datos

13

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

5. En la clase JDialog_Tabla a. Disee un dialogo con la siguiente apariencia y estructura

b. Cree una instancia de la clase DefaultListModel llamada modLista, y en el constructor coloque un cdigo que centre el dilogo y asigne el modelo al control Lst_Lista

c. Implemente el cdigo del mtodo Llenar_Tabla

Estructura de Datos

14

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

d. Implemente el cdigo del control btn_Cerrar

Ejercicio Propuesto
Huesped Codigo NombreHuesped NumeroHabitacion FechaIngreso FechaSalida

Arreglo_Huesped 0
Huesped

1
Huesped

2
Huesped

...

99

Habitacin NumeroHabitacion Precio Estado

Arreglo_Habitacion 0
Habitacion

1
Habitacion

2
Habitacion

...

50

Cree un proyecto que permita: Registrar Habitaciones: El registro se realizar en instancias de la clase Habitacion que sern almacenadas dentro de una instancia de la clase Arreglo_Habitacion. El Estado representa un valor que indica si la habitacin esta LIBRE u OCUPADA. Restriccin 1: No pueden registrarse 2 habitaciones con el mismo nmero. Restriccin 2: Slo pueden registrarse un mximo de 50 habitaciones. Registrar Ingreso de Huspedes: El registro se realizar en instancias de la clase Huesped que sern almacenadas dentro de una instancia de la clase Arreglo_Huesped. La habitacin en donde se haya hospedado la persona deber de cambiar su estado para indicar que esta habitacin se encuentra ocupada Restriccin 1: No puede registrarse un husped en una habitacin que ya se encuentre OCUPADA. Registrar Salida de Huspedes: Se deber de buscar el registro del husped e ingresar la fecha de salida. La bsqueda puede ser por el nombre del Husped o por el nmero de la habitacin. Cuando el Husped se retire la habitacin queda nuevamente disponible. Listar Habitaciones: Se deber poder Listar las Habitaciones por 2 criterios: HABITACIONES LIBRES y HABITACIONES OCUPADAS. El listado de las habitaciones ocupadas debera de incluir el nombre del Husped. Ordenar Registros: Se deber poder realizar las siguientes ordenaciones: o Ordenar la Lista de Huspedes por sus Apellidos (Menor a Mayor) usando el mtodo de Ordenacin por Burbuja o Ordenar la Lista de Habitaciones por su Nmero (Mayor a Menor) usando el mtodo de Ordenacin por Seleccin.

Estructura de Datos

15

Ing. CIP Loncn Salazar, Pierre Paul

ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS

I. OBJETIVOS Al trmino de esta experiencia, el estudiante ser capaz de: 1. Adaptar los mtodos de bsqueda y ordenacin aprendidos a casos particulares II. EQUIPOS Y MATERIALES Computador Gua de Laboratorio Material impreso con la informacin de la sesin de aprendizaje. III. METODOLOGIA Y ACTIVIDADES a) Teora de bsquedas y ordenaciones IV. IMPORTANTE Antes de iniciar con el desarrollo del Laboratorio, crearemos siempre, una carpeta, donde se guardar toda la informacin del presente laboratorio. Para ello realice lo siguiente: Ingrese al Explorador del Windows (puede hacerlo dando clic derecho sobre el Botn Inicio de la Barra de Tareas y seleccione la opcin Explorar). La ventana del Explorador esta dividida en dos columnas, en la columna de la izquierda busque hacia abajo la unidad de almacenamiento (D:) y de un clic izquierdo sobre l. Luego dirija el mouse hacia la columna de la derecha y en un sector vaco, presione clic derecho, seleccione la opcin Nuevo y luego la opcin Carpeta. Aparecer una carpeta amarilla con un texto: Nueva Carpeta sombreado en azul, digite sobre l, el nombre para su carpeta (este puede ser L6_ESDA_(Turno Apellido)), luego de digitar presione la tecla Enter. Listo, ya tiene su carpeta dentro de la cual guardar todo lo que trabaje a continuacin. Cierre la ventana del Explorador del Windows. V. PROCEDIMIENTO a) b) c) d) e) f) Encender el computador. Crear carpeta donde guardar el documento son su informacin. Ingresar al software NetBeans IDE y all crear el proyecto solicitado Presentar avances al docente para la calificacin correspondiente. Guardar la carpeta de sus archivos a sus memorias y enviar por correo una copia del archivo al docente del curso. Retirarse del laboratorio de forma ordenada.

Estructura de Datos

16

Ing. CIP Loncn Salazar, Pierre Paul