Documentos de Académico
Documentos de Profesional
Documentos de Cultura
8 Enero 2003
Pregunta 1 (1.5 p):
Implementar un subprograma en Ada que determine si dos rectas en el espacio de dos dimensiones se
cortan (y el punto de corte) o no. Las rectas vendrn determinadas por los trminos de una ecuacin del
tipo ax+by+c=0 o donde cada uno de los trminos son campos de un tipo registro que se tendr que
definir. En caso de que las rectas se corten, el subprograma deber devolver el punto de corte en
coordenadas (x,y) en una variable. En caso de que no se corten decidir cual ser el mecanismo de
informacin al subprograma invocador para que entienda que las rectas son paralelas.
Pregunta 2 (1.5 p):
Definir e implementar un paquete en Ada para que proporcione un tipo de matriz cuadrada de nmeros
reales donde el tamao de la misma ser un parmetro genrico del paquete. Deber ofrecer las
operaciones de producto de matrices (operador *), suma de matrices (operador +), determinante ( deter) y
visualizar matriz.
Pregunta 3 (2.0 p):
Un almacn tiene capacidad para 550 productos de clases A,B y C. Todos ellos se almacenan juntos pero
se sirven por parte de los operarios (varios de ellos atendiendo peticiones de clientes al mismo tiempo) de
forma independiente bajo las siguientes restricciones:
Inicialmente hay 100 unidades de cada uno
Ningn producto puede sobrepasar un stock de 200 unidades
El almacn no puede albergar mas de 550 productos
Cuando el stock de alguno de ellos baja por debajo de las 50 unidades se debe hacer una
reposicin de 100 unidades. El operario que lo solicita queda a la espera de que llegue el pedido
para poder continuar su trabajo.
Puede suceder que hasta que llega el pedido de reposicin el producto se agote, por lo cual no se
pueden atender los pedidos
Todos los pedidos son de 100 unidades, sea cual sea el producto.
Implementar una estructura de datos que permita gestionar el almacn e implementar tambin las tareas
operarios de almacn y los clientes del almacn. Dicha estructura deber proveer de subprogramas para:
Servir un pedido de cualquier tipo de mercanca (consumir tems). Sugerencia: algo del tipo
Comprar_A, Comprar_B y Comprar_C.
Almacenar los pedidos recibidos (almacenar tems)
Conocer cual es el estado del almacn (visualizar almacen)
Asumiremos implementado un procedimiento generar_pedido(in tipo_producto, out producto) el cual
devuelve en el parmetro producto 100 unidades del producto especificado en el parmetro
tipo_producto.
NOTA: la estructura debe representar el estado del almacn en cuanto a cantidades de los productos, no
donde se encuentran fsicamente.
Pregunta 4 (1.5 p):
Dado el siguiente conjunto de tareas definidas como T = (C i , Pi , Di ) (cmputo, periodo, deadline):