ESTRUCTURA DE DATOS
PRACTICA 1
Ejercicio 1)
Defina los siguientes TAD. Especifique implementaci´on del modelo y operaciones
necesarias.
1. Modelo : Articulos de una boutique. La informaci´on de cada art´ıculo es: codigo
de art´ıculo, talle, color, precio, cantidad. La cantidad de art´ıculos es finita.
Defina la representacion de los datos y que operaciones se consideran necesarias para
manejar la informaci´on de la boutique. Describa lo que debe realizar cada operaci
´on.
2. Modelo : M´aquina expendedora de bebidas. La informaci´on consiste en : nombre
de bebida, nu´mero correlativo, precio. Para comprar una bebida se debe introducir
en la maquina un importe en monedas igual al precio de la bebida que se desea
comprar.
Defina la representacion de los datos y que operaciones se consideran necesarias para
manejar la informaci´on de la maquina. Describa lo que debe realizar cada operaci
´on.
3. Modelo : Articulos de un supermercado. La informaci´on de cada art´ıculo es: codigo
de art´ıculo, tipo (peso o volumen), medida (correspondiente al tipo), precio. La
cantidad de art´ıculos es finita. Se desea disponer de ventas telef´onicas.
Defina la representacion de los datos y que operaciones se consideran necesarias para
manejar la informaci´on del supermercado. Describa lo que debe realizar cada operaci
´on.
4. Modelo : biblioteca. Se debe llevar registro de :
(a) informaci´on de libros: t´ıtulo del libro, nombre del autor, ISBN (numero de hasta
7 digitos), cantidad de ejemplares, nu´mero correlativo de prestamo.
(b) informaci´on de socios: nombre del socio, c´edula de identidad, nu´mero
correlativo de prestamo.
(c) informaci´on de prestamos: ISBN del libro, C.I. del socio, nu´mero correlativo
de prestamo.
Defina la representacion de los datos y que operaciones se consideran necesarias para
manejar la informaci´on de la biblioteca. Describa lo que debe realizar cada operaci
´on.
Ejercicio 2)
Defina en C la representacion de un punto en el plano utilizando coordenadas cartesianas.
Implementar tambi´en un segmento en el plano. Proveer operaci´ones para:
1. origen (punto que representa el mismo)
2. suma de dos puntos
3. diferencia entre dos puntos
1
4. largo del segmento
2
Ejercicio 3)
Implemente en C representacion de racionales que permita definir y manipular numeros
racionales representados como un par de enteros.
Implemente las siguientes operaciones:
1. suma
2. diferencia
3. producto
4. cociente
5. igualdad
6. MCD del numerador y el denominador
7. forma normal del racional
Ejercicio 4)
Implementar los siguientes programas en C/C++:
1. A ciertos estudiantes se les dice que su calificaci´on final ser´a el promedio de las
cuatro calificaciones m´as altas de entre las cinco que hayan obtenido en el curso.
Escriba un procedimiento con cinco parametros de entrada (las calificaciones
obtenidas) y un parametro de salida (el promedio) que lleve adelante el c´alculo.
2. Idem a 1) donde las calificaciones se pasan en un array.
3. Determinar las raices de la ecuaci´on cuadr´atica ax2 + bx + c = 0 donde a, b y c
son reales. Indicar si el resultado son 2 raices reales, 1 raiz doble o 2 raices
imaginarias.
4. Escribir una funci´on que verifique si dos arreglos son iguales (mismos elementos en
el mismo orden).
5. Escriba un algoritmo iterativo que calcule los numeros de Fibonacci.
6. Escriba un algoritmo iterativo que calcule el Factorial de un numero natural n.
7. Escribir un procedimiento llamado ”cambio” con parametros una matriz bidimensional
de 10 filas y 10 columnas y dos variables naturales m y n. El procedimiento intercambia
las filas m y n de la matriz.