Download Finales 2016
Document related concepts
Transcript
FINAL Introducción a la Programación II - 6-09-2016 Se tiene un árbol de números positivos ordenado por los mismos. Se pide que lo recorra in-order llevando en todo momento la suma acumulada de los nodos por los que se pasó. Debe imprimir todos los nodos que cumplan con la condición que la suma acumulada es igual a la suma del subárbol derecho (mayores) del mismo. La función que suma el subárbol derecho no debe seguir recorriendo nodos si detecta que la suma se superó. Se pide además, que realice todas las definiciones, DE y el programa principal. No pueden utilizarse estructuras auxiliares. FINAL Introducción a la Programación II - 2-08-2016 Se pide que realice el Diagrama de Estructura y el código Pascal necesarios para resolver el siguiente problema: Se tiene un árbol de enteros ArbNumeros del cual se deben podar (eliminando todos sus nodos) los subárboles cuyo promedio (suma de los valores de los hijos / cantidad de hijos) sea mayor a un número dado como parámetro. Debe procesar el árbol en pre-order para realizar esta solución. FINAL Introducción a la Programación II - 5/7/2016 Se tiene un arbol CIUDADES donde cada nodo tiene el nombre de la ciudad, la provincia a la que pertenece y la cantidad de habitantes. El árbol está ordenado por nombre de ciudades. Se pide que arme una lista POBLACION a partir de los nodos del árbol que se encuentran dentro de un rango ciudad1:ciudad2 que debe pedir por teclado. No recorrer el árbol innecesariamente. La lista población estará formada por un nodo que contiene la provincia y un entero con la cantidad de población acumulada correspondiente a todas las ciudades de esa provincia que caen en el rango. La lista población debe estar siempre ordenada ascendentemente por la cantidad de población de provincia. No puede usar estructuras auxiliares. FINAL Introducción a la Programación II - 3/05/2016 Se tiene un árbol binario con información de Facturación de Clientes, cada nodo posee número de Cliente e Importe (el importe será positivo en las facturas y negativo para los recibos). El árbol está ordenado por número de cliente, cada cliente puede tener varios nodos, uno por movimiento. Se desea que cree una lista doblemente vinculada con todos los clientes cuyos números están entre ClienteInicial y ClienteFinal. Cada nodo de la lista poseerá el número de cliente y el Saldo (suma de todos sus movimientos en el árbol). La lista debe estar en todo momento ordenada ascendentemente por saldo. Debe recorrer una única vez el árbol y no pasar por nodos innecesariamente. FINAL Introducción a la Programación II - 23/2/2016 Se tiene un árbol de números positivos ordenado por los mismos. Se pide que lo recorra in-order llevando en todo momento la suma acumulada de los nodos por los que se pasó. Debe imprimir todos los nodos que cumplan con la condición que la suma acumulada es igual a la suma del subárbol derecho (mayores) del mismo. La función que suma el subárbol derecho no debe seguir recorriendo nodos si detecta que la suma se superó. Realice todas las definiciones, DE y el programa principal. No puede utilizar estructuras auxiliares. FINAL Introducción a la Programación II - 16-2-2016 Se tiene una estructura conteniendo los vuelos de una aerolinea. Dicha estructura está compuesta por un árbol Aviones ordenado por número de avión y en el que cada nodo además de dicho número posee un puntero a una lista de vuelos de ese avión (ordenada por fecha y en la cual cada nodo posee dicha fecha y destino). Por otro lado existe una lista de pilotos (ordenada por DNIde pilotos), en la que cada nodo además de ese DNI posee un puntero con el que se apunta a los nodos de los vuelos mencionados anteriormente y los cuales forman para este vínculo una lista doblemente vinculada que también está ordenada por número de vuelo. La estructura ya está creada y además se provee un archivo que posee en cada registro un número de avión y y un DNI de piloto. Lo que debe hacer es eliminar todos los vuelos de la estructura que correspondan a esas combinaciones de avión y piloto existentes en el archivo. Notas: 1 - Deben liberar la memoria que deja de utilizarse. 2 - No recorrer innecesariamente la estructura. 3 – No puede utilizar estructuras auxiliares. 4 – Realice el diagrama de estructuras.