Escolar Documentos
Profissional Documentos
Cultura Documentos
GUIA DE EJERCICIOS
INF 131
I/2018
NOTA
Realizar los ejercicios que cada auxiliar determine.
Entregar la práctica antes del examen de cátedra.
Cada ejercicio debe considerar:
o Problema
o Diagrama de clases
o Solución del problema en el principal o procesos
1
INF – 131 ESTRUCTURA DE DATOS Y ALGORITMOS
1. Dadas dos pilas A y B que contienen números enteros se pide llevar aquellos números que
sean pares a la pila A y el resto de los números impares a la pila B, sin hacer uso de pilas
auxiliares ni ninguna otra estructura.
2. Dada una pila de objetos fracciones con atributos numerador, denominador y signo de
operación (+,-,*,%) donde “%” representa división, se pide evaluar la pila. Recuerde y
priorice los operandos
Ejemplo:
1/2 * 1/4 + 1/8 - 1/2 % 5/4
1/8 + 1/8 – 4/10 = 13/20
3. Dada una pila de cadenas, se pide ordenar la pila lexicográficamente donde los elementos
que comiencen con la primera letra “A” deberán estar en el fondo de la pila y ascender
hasta que las palabras que empiezan con la letra “Z” estén en la cima de la pila.
4. Dada una pila de caracteres “(,),[,],{,}” y espacios en blanco “ ” que no necesariamente
serán de longitud “1” se pide determinar si una expresión esta balanceada correctamente.
Ejemplo :
[ ( ) ] Esta Balanceada Correctamente
5. Dada una pila de cadenas ordenada se pide introducir por teclado una cadena e insertarla
a la pila de tal manera que se mantenga el orden de la pila.
6. Escriba una función booleana que tenga como parámetro de entrada una cadena “x”, que
devuelta “True” si esta cadena es palíndrome o False si esta no lo es. Una cadena
palindrome es aquella que se lee igual de derecha a izquierda. Puede hacer uso de pilas y
colas para su solución.
Ejemplo
7. Dada una cola simple normal de objeto persona con atributos nombre, fecha de
nacimiento (formato dd/mm/aaaa) y el sexo donde “F” femenino y “M” masculino se pide
realizar:
2
INF – 131 ESTRUCTURA DE DATOS Y ALGORITMOS
8. Dada una cola con objetos tipo pedido que tienen como atributos cod_cliente,
nro_pedido, fecha, cantidad y cod_libro, una cola con objetos tipo cliente con atributos
nombre, cod_cliente, edad, y una cola con objeto tipo libro con atributos cod_libro,
precio, titulo, autor. Se pide determinar:
a) Mostrar al o a los clientes que hicieron mas pedidos
b) Calcular el monto total (costo) de los pedidos agrupando por cliente
c) Mostrar aquellos clientes que realizaron un pedido en la fecha x
10. Sea una cola que almacena caracteres. Por ejemplo: a, b, a, c, d, x, e, a, b, d. Ordenar de
acuerdo al número de repeticiones del dato.
a. Ascendentemente
c, x, e, b, b, d, d, a, a, a
b. Descendentemente
a, a, a, d, d, b, b, e, x, c
1. Dada una múltiple pila que contiene objetos de tipo persona(ci, nombre, edad, genero):
a. Mostrar la cantidad de varones y mujeres de cada pila.
b. Ordenar los elementos de la pila con respecto a su edad.
c. Insertar una persona en la i-esima posición de la múltiple pila y en la j-esima
posición de la pila.
2. Dada una multiple pila que contiene números, mostrar los números primos por pila, si
existen.
3. Dada pila que contiene colas circulares que contiene objetos auto(modelo, color).
a. Mostrar los autos que sean de color x.
b. Eliminar los autos que de modelo X.
c. Insertar una cola circular en la i-esima posición de la pila.
4. Sea una múltiple pila que contiene objetos libro (autor, titulo, nroPag, tipo).
a. Mostrar al autor X.
b. Ordenar con respecto al nroPag.
c. Mostrar los libros de título x.
3
INF – 131 ESTRUCTURA DE DATOS Y ALGORITMOS
6. Dado un objeto múltiple cola circular “W” donde se almacenas polinomios se pide:
a. mostrar el o los polinomios que tengan mas términos
b. Mostrar todos los polinomios que tengan el exponente “z” que se será introducido por
teclado
7. Dado un objeto multiple cola normal “Z” que contiene datos de enteros se pide eliminar
de cada cola aquellos pares consecutivos si existen caso contrario no se modifican las
colas.
1. Dada una lista simple circular de números, añadir el dato “x” y el dato “y” antes y después
de un dato introducido por teclado, si existe dicho dato. En caso de que no exista, “x” se
añade al comienzo de la lista y “y” se añade al final de la lista.
3. (Bajo el enunciado del ejercicio anterior) el gerente necesita saber cuántos hijos e hijas,
menores de 12 años, tienen sus empleados a fin de comprar presentes para navidad.
4. Se tiene una lista doble normal de participantes en un sorteo de fines de gestión, de los
participantes se conoce nombre, edad, ci, dirección, celular. Se pide ordenar de acuerdo a
la edad y luego eliminar a los participantes menores de edad (edad < 18)
5. Se tiene una lista simple normal de dígitos (0-9), se pide eliminar a los dígitos que estén
repetidos y después sumar los dígitos de dos en dos, si alguna suma excede el 9 entonces
sumar los dígitos de ese resultado para que se convierta en un solo digito. Repetir este
proceso hasta solo obtener un digito.
4
INF – 131 ESTRUCTURA DE DATOS Y ALGORITMOS
Repetidos
9 5 1 5 7 4 3 8 3 9 1 7 4 8
9 + 1 = 10 => 1 + 0 = 1 1+7=8
1 7 4 8 8 4 8
8 + 4 = 12 => 1 + 2 = 3 3 + 8 = 11 => 1 + 1 = 2
3 8 2
6. Considerando que los libros de la biblioteca municipal que están organizados por áreas
(Infantil, Matemáticas, Ciencias políticas, etc.). Se tiene la Lista Doble Normal que
almacena las diferentes áreas<Área, NroLibros> y la Lista Doble Circular que almacena la
información de los libros<Titulo, autor> agrupados por áreas según el orden de la lista de
las áreas.
a. Mostrar cada Área y toda la información de sus libros.
b. Agregar R libros al área X.
7. Sea una Lista (LS_Circular), de productos, donde cada uno almacena (nombre, precio y
stock).
a. Ordenar la Lista de acuerdo al Stock.
b. Eliminar los productos agotados.
8. Crear una lista doble circular R con N elementos (cada elemento tiene código, nombre y
numcelular). Eliminar de la lista R todos los nodos cuyo dígito inicial de numcelular es X y
con estos datos crear una nueva lista doble normal C y luego mostrar ambas listas.
9. Sea la empresa ElectroMulti, se manejan sus datos con dos listas: una lista simple de objetos
electrodoméstico<nombre, idElec, costo> y otra lista simple de objetos venta<cantidad,
fecha, idElec> determinar:
a. El monto total de las ventas de la empresa.
b. La fecha en la que se generó mayor ganancia.
5
INF – 131 ESTRUCTURA DE DATOS Y ALGORITMOS
v v
Se pide:
a. Determinar cuál es la especialidad con mayor demanda de pacientes y mostrarla.
b. Mostrar en que especialidad está el paciente con nombre X.
1. Sea una lista circular de materias donde cada materia tiene una lista simple de
estudiantes. Realizar:
a) Mostrar a los estudiantes de la materia “INF-131”
b) Mostrar las materias en las que está inscrito el estudiante con ci X.
c) Mostrar las materias con la mayor cantidad de estudiantes.
2. Crear una Múltiple Lista de Listas Circulares, en la primera lista almacenar el primer
término de la serie de Fibonacci, en la segunda los dos primeros términos de la serie de
Fibonacci, en la tercera los tres primeros y así sucesivamente hasta las n listas, luego
mostrar las listas generadas. Finalmente eliminar el término X, si existe.
5. Del ejercicio 3 De cada sucursal mostrar el nombre del empleado que logro vender más
en el supermercado.
6
INF – 131 ESTRUCTURA DE DATOS Y ALGORITMOS
8. Se requiere controlar el índice de un libro organizado por capitulo con un Múltiple Lista:
Lista de Capítulos: Numero, Titulo, NroPagina
Lista de Subtítulos: Texto, NroPagina
a) Mostrar los subtítulos del Capitulo número X
b) Verificar si existe el tema X (como título o subtítulo)
10. Sea la lista de Docentes <nombre, Lista de pagos> y la lista de pagos <fecha, monto> se
pide:
a. Mostrar a los docentes que tuvieron algún sueldo mayor a 1000.
b. Verificar si el docente de nombre X recibió su pago de la fecha Y.