Sunteți pe pagina 1din 11

Practica General

Programacin Orientada a Objetos


INF-121

Auxiliar
Cruz Coareti Wendy Paola
Laura Yavi Fabio
Parisaca Quispe Alisn

Paralelo
Lic. Celia Tarquino
Lic. Menfy Morales
Lic. Marcelo Aruquipa

Horario
Mircoles 14:00 - 16:00
Mircoles 12:00 - 14:00
Viernes 10:00 12:00

Nota: Pueden asistir a clases en cualquier horario, la inscripcin con el auxiliar con 1ra prctica.

PROGRAMACION ORIENTDA A OBJETOS


1. Disear un diagrama de clases para representar los siguientes tipos de objetos.
Especificar por lo menos tres atributos y tres acciones en cada caso:
Un navegador de internet.
Una factura de ventas.
Una computadora.
2. Disear un diagrama de clases para las siguientes situaciones. Represente con
detalle todas las clases relacionadas en los problemas:
En un taller mecnico los clientes llevan sus autos a reparacin. El taller elabora una
orden de trabajo con los datos del cliente como su nombre, direccin y telfono de
contacto, e incluye tambin los datos del auto que ser reparado: Marca, modelo,
color, nmero de las placas. La orden de trabajo tiene un identificador numrico
nico
3. Se tiene una serie de bancos cuya arquitectura es muy sencilla, y esta es la
informacin que desean almacenar.
a. Datos propios del banco (nombre, direccin, etc.)
b. Clientes con sus datos personales y el servicio o servicios que utilizan
(prstamos, depsitos y cualquier otro servicio).
Por el momento, es lo nico que necesitan.
Realiza las siguientes tareas:
- Representa esta clase de bancos en diagrama UML.
- Instancia (crea) tres bancos de este tipo de distintas maneras.
- Muestra los servicios que utiliza el Cliente X.
- Muestra los clientes que utilizan el servicio de prstamo.
4. Tenemos la clase Escuela que representa a las escuelas de nivel bsico en esta
ciudad. Esta clase permite que cada escuela resguarde la informacin los ni@s
inscritos, los cursos que les toca tomar (1ro, 2do,..,6to) y sus notas. Estos datos
son anuales.

Realiza las siguientes tareas:


- Primero crea la informacin para una misma escuela: datos para la gestin 2013
y datos para la gestin 2014. Puedes usar el mismo constructor.
- Ahora crea (instancia) la informacin para la escuela Repblica de Argentina
para la gestin 2014. Debes usar un constructor diferente al anterior.
- Los directores de las dos escuelas que ya creaste desean saber el promedio de
edad de los ni@s de cada escuela (Gestin 2014).

Debes obtener la mejor nota del ao 2014 entre todos los cursos de cada una
de las dos escuelas instanciadas, Qu escuela tiene la mejor nota? Qu
alumno o alumnos tienen la mejor nota?
Para la primera escuela que creaste (Gestin 2013), muestra la nota promedio
por curso.
Ya tenamos la informacin de la primera escuela para las gestiones 2013 y
2014, cuntos ni@s aplazados existieron en ambas gestiones? Cunta es
la diferencia?

5. Implementar la clase Museo de Arte donde una persona pueda agregar sus obras
con los siguientes datos ( autor, nombre, descripcin y otros ) con sus respectivos
atributos , mtodos, constructores
a) Representar la clase en UML
b) Instanciar tres objetos de distinta forma
c) Determinar cuntas obras son del autor x
d) Mostrar el nombre de la persona que tienen ms de 6 obras presentadas
en el museo
6. Dada la clase hospital:
Hospital
Nombre
Capacidad
NroPacientes
Nombre[50]
Genero[50]
Edad[50]

a)
b)
c)
d)
e)

Instanciar 2 Hospitales de diferentes formas


Mostrar la edad del paciente con nombre x
Mostrar la flota con el mayor nmero de pasajero menores de edad
Llevar los K ltimos pacientes del segundo hospital al primer hospital
Verificar si el paciente x de edad y est en el hospital

POLIMORFISMO
7. Una empresa desea un sistema capaz de calcular el salario semanal de sus
empleados de acuerdo a la cantidad de horas trabajadas, el sueldo por hora y
tomando en cuenta los siguientes criterios:
Si las horas trabajadas son ms de 40, entonces el excedente se
considera hora extra.
Si las horas trabajadas estn entre el rango de 41 a 45, entonces cada
hora
extra
se paga doble.

Si las horas trabajadas son ms de 45, entonces cada hora extra se paga
triple.

Implemente el sistema de acuerdo al siguiente diagrama de clases en UML:

Implementar los mtodos HorasTrabajadas() y SueldoPorHora()


Sobrecargar el mtodo CalcularSalario()
a) Si las horas trabajadas son ms de 40, entonces el excedente se considera
hora extra.
b) Si las horas trabajadas estn entre el rango de 41 a 45, entonces cada hora
extra se paga doble.
c) Si las horas trabajadas son ms de 45, entonces cada hora extra se paga
triple.

8. Una agencia de renta de vehculos dispone de automviles (segn el siguiente


diagrama en UML).

Se pide:
-

Sobrecargar el mtodo Ordenar()


a) Ordenar los usuarios de acuerdo a los kilmetros recorridos.
Ascendente.
b) Ordenar los usuarios de acuerdo a los das usados. Descendente.
Sobrecargar el mtodo Alquilar()
a) Calcular el ingreso total del vehculo segn los kilmetros recorridos

Calcular el ingreso total del vehculo segn los das usados.

9. Tenemos la clase Hospital que representa a los hospitales que existen en la


Republica de Moldova, cada hospital desea almacenar la informacin de las
personas que trabajan en sus instalaciones: Doctores, enfermeras y personal de
limpieza. La informacin que desean manejar es sencilla, ya que solo desean
registrar el nombre y nmero de identificacin de cada trabajador.

A lo largo de los aos de funcionamiento de estos hospitales, se han estado


contratando y despedido trabajadores.
El primer hospital moldoviano en probar tu registro es el hospital Dar Cinci Puncte.
Realiza las siguientes tareas:
-

Crea la informacin para este hospital. Puedes usar un constructor o un mtodo


Llenar() (o cualquier otro nombre) para llenar los vectores.

Sobrecargar el mtodo Contratar() para contratar a doctores, enfermeras o


personal de limpieza.

Sobrecargar el mtodo Despedir() para despedir al Doctor x, o la enfermera y,


o al empleado de limpieza z.

10. En el universo existen un numero inmenso de galaxias y cada galaxia posee un


montn de sistemas, y cada sistema (en nuestro caso el Sistema Solar) tiene varios
planetas y otros cuerpos celestes. Te presento la clase Galaxia que representa a
las galaxias existentes en el universo.

La informacin que se desea almacenar de los sistemas es el nombre y la cantidad


de planetas que posee. La informacin que se desea almacenar de los planetas es
su nombre y densidad. La informacin que se desea almacenar de las razas es su
nombre, y cuantos habitantes en toda la galaxia pertenecen a estas razas.

Realiza las siguientes tareas:


-

Instancia a la galaxia llamada La Galaxia con 6 sistemas y 10 planetas, 6 razas


y 3 idiomas.

Sobrecarga el mtodo ordenar() de la siguiente manera:

Ordenar ascendentemente los sistemas por la cantidad de planetas que


posee.

Ordenar descendentemente los planetas por densidad.

Ordenar alfabticamente las razas y los idiomas.

Sobrecarga el mtodo buscar() de la siguiente manera:


o

Buscar al sistema Roti-Ow y desplegar un si existe o no existe.

Buscar al planeta Tatooine y desplegar su informacin.

Muestra cuantos seres pertenecen a la raza de los Gungan y


Neimoidianos.

11. Sea la clase biblioteca con atributos nombre, nroLibros, Libros [3,30] (autor, nombre,
nroPrestamos), ubicacin. Realizar la sobrecarga de un mtodo que pueda
a) Adicionar n libros en la biblioteca
b) Adicionar un libro con nombre x, autor y
c) Adicionar n libros del autor x
d) Mostrar todo el objeto
e) Mostrar los libros q se prestaron ms de 7 veces
f) Mostrar Los libros de nombre x que no pertenezcan al autor y
12. Dado:
EquipoFutbol
Nombre
NroJugadores
Jugadores[30,4]
(Nombre,
posicin,
nroGoles,
amonestaciones)
a)
b)
c)
d)
e)

Instanciar 2 objetos EquipoFutbol (1 constructor, 1 Leer)


Verificar si el jugador de nombre x tiene posicin delantero
Verificar si el jugador de nombre x marco menos de 4 goles
Verificar si el numero de jugadores del equipo A es igual al del equipo B
Verificar si existe un jugador de posicin defensor sin amonestaciones en el
equipo
f) Mostrar el equipo (entre A y B) que anoto ms goles
g) Mostrar a los jugadores que no jueguen de posicin arquero

13. Una empresa de telefona tiene en sus registros nroTrabajadores,


Trabajadores[2,30](Nombre, NroItem), nroUsuarios, Usuarios[2,30](Nombre,
Ocupacion), nZCobertura , ZonasCobertura[30]
a) Instanciar 3 Empresas de telefona
b) Adicionar en usuarios a los trabajadores que no sean usuarios de la misma
empresa
c) Adicionar las Zonas de cobertura de la empresa B en la empresa A (no
adicionar si ya existe)
d) Eliminar a los usuarios de la telefona A que se encuentran en la telefona B
e) Eliminar a los ltimos 10 usuarios de la empresa
14. Sea la clase hotel con nombre, NumRegistro, nroHabitaciones, Habitaciones[2,30]
(Capcidad, estado) y la clase ListaEspera con nSol, Solicitud[3,30](nroPersonas,
telefeno)
a) Instanciar 1 Hotel y 1 ListaEspera
b) Sobrecargar el operador ++ para leer por teclado (en cada clase)
c) Sobrecargar el operador -- para mostrar (en cada clase)
d) Verificar si el hotel cuenta con al menos una habitacin en estado disponible
e) Verificar si el hotel tiene capacidad para aceptar n personas
f) Verificar si el hotel puede aceptar a las personas que estn en listaEspera
15. Dada La clase biblioteca con nroLibros, Libros[2, 30](Del tipo String) y la clase Libro
con nombre, autor, contenido.
a) Instanciar 1 biblioteca y 3 libros
b) Sobrecargar el operador ++ para leer por teclado (en cada clase)
c) Sobrecargar el operador -- para mostrar (en cada clase)
d) Sobrecargar el operados + para adicionar el libro A en la biblioteca
e) Sobrecargar el operador && para verificar si el libro B existe en la biblioteca
HERENCIA
16. Una compaa editorial produce tanto libros impresos como audio-libros en discos
compactos. Disee una clase denominada Publicacin que almacene el ttulo
(cadena) y el precio (numrico real) de una publicacin. A partir de esta clase, derive
dos clases: Libro a la cual le agregue el nmero de pginas (entero) y CD, a la cual
le agregue el tiempo de reproduccin en minutos (numrico real). Cada una de las
clases debe tener propiedades para acceder a sus respectivos datos.
a. Elabore un diagrama de clases UML indicando las relaciones de herencia.
b. Implementar los mtodos para obtener el ttulo y el precio en las clases Libro
y CD.
c. Calcular el precio total por la venta de 2 Libros y 1 CD.
17. Elabore el diseo de una jerarqua de clases para modelar los alimentos de un
restaurante, en el que se sirven:
Platillo fuerte

Ensalada
Sopa
Postre
Bebida
El diagrama debe tomar en cuenta las siguientes consideraciones:
a. Todos los alimentos tienen como datos el nombre y su precio.
b. El pollo puede ser un ingrediente del platillo fuerte, la ensalada y la sopa.
c. La carne puede ser un ingrediente solamente del platillo fuerte.
d. Tanto el platillo fuerte, la ensalada y la sopa pueden contener sal.
e. El azcar puede ser un ingrediente del postre y la bebida.
f. Para comer el platillo fuerte y la ensalada se requiere uso de tenedor y
cuchillo.
g. Para degustar la sopa, se requiere cuchara.
h. El postre se puede degustar mediante tenedor.
i. La bebida se sirve en un vaso y se puede utilizar un sorbete.
18. Llena el siguiente diagrama vaco con relaciones de herencia.

Nombra las clases, los respectivos atributos, constructores y 2 mtodos por


clase que no sean los que obtienen, cambian y muestran el contenido de los
atributos.
19. Un rea protegida necesita registrar la fauna conocida que existe en sus terrenos.
Esta rea protegida consta de dos sectores: los terrenos donde vive toda la fauna
salvaje y libre, y la seccin de animales que tienen cierto grado de peligro de
extincin y se encuentran en cautiverio para cuidados especiales.
Para evitar crear una clase que represente a cada especie existente y adems evitar
repetir atributos en cada clase deberemos utilizar Herencia.

Para el funcionamiento del registro de animales realiza las siguientes tareas:


o Ingresa informacin para 4 animales salvajes y 3 que se encuentren en
cautiverio.
o

Muestra la identificacin de los animales cuya localizacin habitual sea


la hectrea 2.

Muestra la especie del animal que lleva ms aos en cautiverio.

Muestra la identificacin, especie y estado actual de los animales cuyo


grado de extincin es naranja

20. Sea la jerarqua de clases

a) Mostrar al instrumento con mayor precio

b) Contar cuantos instrumentos son de viento


c) Mostrar si dos guitarras son exactamente iguales
d) Verificar si existe un instrumento de origen boliviano si existe mostrar sus
caractersticas.
21. Sea la siguiente jerarqua

a) Identificar los nombres y atributos de cada clase al menos un atributo


significativo.
b) Determinar el transporte ms costoso de los 6 instanciados
c) Mostrar los transportes con color X
d) Mostrar que transporte terrestre tiene ms capacidad.
e) Verificar si hay ms de 2 Transportes con modelos arriba del ao 2000.
22. Sea la siguiente jerarqua de Animales realizar el diagrama de clases
a) Abstraer los atributos necesarios para los siguientes mtodos
b) Mostrar a los animales carnvoros
c) Verificar si existen animales invertebrados
d) Mostrar a los animales de sangre fra
e) Verificar si dos animales herbvoros son iguales
f) Verificar si hay un animal domstico y si existe mostrar sus caractersticas.

23. Sea el siguiente diagrama de clases

a) Mostrar los alimentos de que tengan vitaminas A,C


b) Mostrar los alimentos de color X
c) Dados los alimentos cereal y carne mostrar los nombres de sus clases
derivadas con mayor costo
d) Mostrar el nombre de los alimentos verdura y fruta que crece un ambiente
clido.