Trabajos practicos de programacion

767 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
767
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Trabajos practicos de programacion

  1. 1. Universidad Nac. Del Comahue – Facultad de Economía y Adm. – Dep. de Informática y Estadística ELEMENTOS DE PROGRAMACION Trabajo Práctico Nro. 4: ARCHIVOS DE DATOS 1. De acuerdo a la siguiente declaración de tipos: Type TipoArchivo = file of TipoElemento; (* Integer *) TipoPosicion = 0 .. Maxint; Var Archi : TipoArchivo; Elemento : TipoElemento; Posicion : TipoPosicion; Escribir procedimientos o funciones para: a) buscar un cierto valor elemento e indicar como salida la posición que ocupa dentro del archivo. Suponga que no existen elementos repetidos y realice este procedimiento de dis formas distintas según los criterios que siguen: i. Suponiendo que el archivo está desordenado. ii. Suponiendo que el archivo está ordenado en forma decreciente. b) Localizar el elemento de mayor valor dentro del archivo e imprimirlo junto con la posición que ocupa. c) Imprimir los elementos tales que su valor sea igual a la posición que ocupan. d) Generar otro archivo, ArchiAux, con los elementos pares de Archi. e) Desarrollar un programa que permita probar cada uno de los subprogramas desarrollados anteriiormente. 2. Se tiene un archivo de inventario de los libros de una librería. Los datos que se mantienen para cada libro son los siguientes: • Título • Autor • Código del libro • Número de Ejemplar • Precio de Venta • Cantidad en existencia a) Se pide definir los tipos de datos apropiados para mantener la información de todos los libros. b) Desarrollar las siguientes operaciones básicas: i. Cargar los datos verificando que para un libro nuevo debe chequearse que no exista otro con el mismo Código y Nro de Ejemplar. En caso de existir, mostrar un mensaje de error acompañado con los datos ya existentes. ii. Visualizar el archivo completo. iii. Calcular e imprimir el valor total del inventario. iv. Listar los libros de un autor determinado que existen en stock. v. Listar los Código de los libros que no tienen cantidad en existencia c) Desarrollar el programa que permita utilizar las operaciones implementadas anteriormente. d) Cómo debería cambiar la forma de almacenar la información para conocer cuál es el libro más vendido? 1
  2. 2. Universidad Nac. Del Comahue – Facultad de Economía y Adm. – Dep. de Informática y Estadística 3. Se desea mantener la información relativa a los alumnos de la Universidad Nacional del Comahue, tales: 1. Apellido y Nombres 2. Legajo 3. Domicilio 4. Teléfono 5. Código de la Carrera 6. Cantidad de Materias aprobadas 7. Feha de Ingreso Sobre esta información, se desean realizar las siguientes operaciones: a) Definir los tipos de dato necesarios para almacenar esta información. b) Definir una estructura de datos apropiada para una tabla índice que permita un acceso directo al archivo (Legajo, Posicion). c) Ingresar la información al archivo asociando al mismo su tabla índice de acceso directo. Tener en cuenta esta estructura para desarrollar las operaciones restantes. d) Incorporar un nuevo alumno verificando que ya no estuviese cargado. e) Dar de baja lógica a un alumno determinado. Modifique la definición de la estructura del registro y de la estructura definida en a), para cumplir este punto. Proponga una manera de recuperar el espacio generado por estas bajas lógicas. f) Mostrar por pantalla la información sobre un alumno particular, a partir de un número de legajo. g) Modificar la dirección y/o teléfono de un alumno en caso de cambio de domicilio. h) Realizar las modificaciones necesarias en los datos de un alumno en el caso de que solicite el cambio de carrera, es decir, el código de carrera y la cantidad de materias probadas. i) Dado un archivo que contiene los números de legajos de alumnos que rindieron una determinada materia, actualizar la cantidad de materias aprobadas para cada uno de ellos. Para este punto defina las estructuras de datos necesarias y considere que tienen ingresada la información. j) Generar un archivo con los datos de los alumnos que hay en cada determinada carrera. En caso de utilizar estructuras auxiliares debe definirlas. k) Escribir un programa que permita probar las operaciones anteriormente implementadas. 4. Dados dos archivos Archivo1 y Archivo2, que almacenan el mismo tipo de registro, en los que los elementos figuran ordenados de mayor a menor (posiblemente con elementos repetidos) escribir un subprograma que genere un tercer archivo, llamado Mezcla, que contenga los elementos de Archivo1 y Archivo2 ordenados de mayor a menor, sin elementos repetidos. 5. Una empresa de alquiler de autos almacena para cada unidad la siguiente información: Patente (3 letras – 3 dígitos), Marca, Modelo, Lista de los últimos 10 clientes que lo alquilaron, y de los clientes se guarda el tipo y nro de documento, apellido y nombre, dirección completa y cantidad de kilómetros recorridos. Además se debe contar con una estructura que permita un acceso eficiente a los datos almacenados en el archivo anterior ya que éste se encuentra desordenado (Patente, Posición dentro del archivo). La empresa cuenta, cómo máximo, con 150 autos para alquilar. a) Definir las estructuras de datos apropiadas para describir la situación planteada. 2
  3. 3. Universidad Nac. Del Comahue – Facultad de Economía y Adm. – Dep. de Informática y Estadística b) Utilizar las definiciones anteriores para resolver las siguientes operaciones: i. Búsqueda de un auto, ii. Carga de un auto nuevo, iii. Baja lógica de un auto realizando todas las verificaciones y controles necesarios. La información debe ordenarse por Patente de la siguiente manera: las letras en forma creciente y, a letras iguales, los dígitos en forma creciente también. Toda las operaciones deben se eficientes. 6. En un Centro Médico se mantiene la información en dos archivos de la siguiente manera: Un archivo ordenado para los médicos con: código de médico, nombre y apellido, DNI y especialidad. Un archivo desordenado para los pacientes con: código de paciente, nombre y apellido, dirección y teléfono, obra social y una lista de códigos de médicos con que se atiende. a) Definir los tipos de datos adecuados para cada archivo y para una tabla índice que permita acceder eficientemente al archivo de pacientes. b) Suponiendo que la información de ambos archivos y de la tabla índice ya están cargadas realizar un procedimiento para listar nombre, apellido y especialidad de todos los médicos que atienden a un código de paciente dado. c) En el archivo de pacientes, el borrado lógico de registros se identifica cuando los códigos de médicos que atienden al paciente son todos nulos. Desarrollar un procedimiento que compacte, es decir, borre físicamente todos aquellos registros que se identifiquen con ese borrado lógico. 7. En un Museo se mantiene toda la información correspondiente a las obras y a sus respectivos autores en dos archivos: Un archivo ordenado por código_de_obra para todas las obras con: código de la obra, nombre de la obra, código del autor, tipo de obra (escultura, pintura, etc.) y una breve descrpcion de la obra. Otro desordenado para los datos de los artistas (autores de las obras que se exponen) con: código del artista, nombre y apellido, fecha y lugar de nacimiento, si murió se almacena la edad y lugar de muerte y si aún vive se almacena el lugar dende reside y una lista ordenada de los código_de_obra que expone. a) Definir los tipos de datos adecuados para cada archivo y para una tabla índice que permita acceder eficientemente al archivo desordenado. b) Suponiendo que la información de ambosarchivos y de la tabla índice ya están cargadas, realizar un procedemiento que dado un código de obra, liste por pantalla el nombre de la obra, su descripcion, el nombre del autor y la edad del autor en caso de estar vivo. c) Suponiendo que la información de ambos archivos y la tabla índice ya están cargados, realizar un procedimiento o función que dado un nombre de artista y un tipo de obra (escultura, pintura, ect.), obtenga la cantidad de obras de ese tipo que tiene expuestas. 8. Un negocio de venta de regalos desea administrar la información de sus productos de la siguiente manera: En un archivo desordenado mantiene la información de todos los productos que vende: código del producto, descripción, nombre de la fábrica del producto y rubro al que pertenece. En otro archivo independiente ordenado mantiene el stock, con la siguiente información: código del producto y cantidad disponible. a) Diseñar una estructura en memoria que permita un acceso directo y eficiente al archivo de productos (el que está desordenado). Definir todos los tipos de datos 3
  4. 4. Universidad Nac. Del Comahue – Facultad de Economía y Adm. – Dep. de Informática y Estadística necesarios que describan el enunciado teniendo en cuenta la posibilidad de efectuar bajas lógicas. b) Realice un procedimiento para cargar la información descripta. c) Realice un procedimiento que permita dar de alta a un nuevo producto. d) Realice un procedimiento que permita dar de baja lógica a un producto. e) Realice un procedimiento que permita convertir todas las bajas lógicas en bajas físicas. f) Desarrollar un algoritmo eficiente, aprovechando la estructura y los tipos definidos en a), que genere un listado de todos los productos y nombre de fábrica cuyo stock sea cero. 9. Se mantiene un sistema para una agencia de viajes. La agencia cuenta con la información sobre los distintos tours que ofrece: código, lugar, fecha de partida y retorno, los datos del hotel designado para el alojamiento(nombre, teléfono, dirección de correo electrónico, domicilio), cupo de personas y costo. Puede haber más de un tours que se dirija al mismo lugar. Así mismo, mantiene información de los pasajeros, sus datos personales(nombre, apellido, DNI, teléfono, dirección de correo electrónico, domicilio), país de procedencia, tours contratados a la empresa y lo que ha pagado del mismo (puede ser total o un adelanto). Si una persona contrata más de un viaje aparecerá en el archivo de pasajeros tantas veces como viajes haya contratado. El archivo con la información de los viajes se mantiene ordenado por código del tour. El archivo de pasajeros se mantiene ordenado por código de tour y DNI del pasajero. a) Definir todos los tipos necesarios para representar la información de acuerdo al enunciado. b) Realizar un procedimiento que genere un listado con todos los tours (junto con sus pasajeros) que se realizarán entre dos fechas dadas, con el siguiente formato: Tour Nro:............. Fecha de partida: ..................... Destino:............... Apellido Nombre DNI Teléfono E-amil País de Procedencia ........... ............... ..... ........... .................. ........................ ........... ............... ..... ........... .................. ........................ Cantidad de Pasajeros del Tour:.................. Tour Nro:............. Fecha de partida: ..................... Destino:............... Apellido Nombre DNI Teléfono E-amil País de Procedencia ........... ............... ..... ........... .................. ........................ ........... ............... ..... ........... .................. ........................ Cantidad de Pasajeros del Tour:.................. c) Generar un archivo con aquellos pasajeros que estén en condiciones de viajar, es decir, los pasajeros que han abonado el costo total del tour, indicando apellido y Dni de pasajeros y el tour correspondiente. 4
  5. 5. Universidad Nac. Del Comahue – Facultad de Economía y Adm. – Dep. de Informática y Estadística d) Realice una definición de tipos para optimizar las estructuras planteadas en el enunciado. Justifique su elección. 5
  6. 6. Universidad Nac. Del Comahue – Facultad de Economía y Adm. – Dep. de Informática y Estadística d) Realice una definición de tipos para optimizar las estructuras planteadas en el enunciado. Justifique su elección. 5

×