Practica 7

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 3

UNIVERSIDAD CENTRAL DE VENEZUELA

FACULTAD DE CIENCIAS
ESCUELA DE COMPUTACIÓN
ALGORITMOS Y PROGRAMACIÓN

PRÁCTICA 7
Programación Orientada a Objetos:
Objetos, diagramas y declaración de clases

Sección de teoría:
1) Comente sobre los siguientes conceptos:
1.1. Clase.
1.2. Objeto.
1.3. Atributo.
1.4. Método.
1.5. Método Constructor.
1.6. Mensaje.
1.7. Modos de Acceso.
1.8. Relaciones entre Clases.
1.9. Diagrama de Clases.

Sección de ejercicios:

Modelado Orientado a Objetos y Diagramas de Clases


Para los siguientes ejercicios se quiere que identifique:
a) Clases existentes.
b) Atributos y métodos de la clase(s).
c) Relaciones (si hay más de una clase).

1) Para cada una de las siguientes clases, realice un diagrama de clases


estableciendo las relaciones existentes entre ellas, de manera tal que el diagrama
sea coherente:
• Motor • Avión de Carga • Piloto • Avión Comercial • Reserva
• Avión • Avión de Pasajeros • Vuelo • Compañía Aérea • Avión Militar

2) Los productos que comercializa una determinada empresa son libros y CD. Cada
producto viene caracterizado por un código que lo identifica de manera única, el
precio base del mercado, y el IVA que se le aplica que es diferente en cada caso,
el 8% para los libros y el 12% para los CD. Además las características propias
de cada tipo de producto son para los Libros: título, autor(es), año de
publicación, editorial, ISBN y para los CD: título, intérprete, año de publicación.

Por otro lado, esta empresa aplica un 20% de descuento a los libros y un 10% a
los CD. Por tanto, el precio de venta de cada producto se calculará como: precio
base +%IVA –dto.

Defina las clases que sean necesarias para representar los distintos tipos de
productos que acabamos de especificar.
3) Cuando se visita una ferretería, es común hallar todo tipo de materiales y
herramientas. Todas las herramientas poseen un conjunto de características
comunes, que son de interés no solo para el dueño del negocio sino también para
los clientes como por ejemplo: el nombre, una pequeña descripción, el costo,
algún código de fábrica asociado, el nombre del fabricante, etc.

En algunas ferreterías, las herramientas las clasifican en tres grandes grupos,


manuales, eléctricas y motoras. Dependiendo del uso futuro por parte de los
clientes, dichos tipos de herramientas se clasifican a su vez en: de albañilería, de
plomería, o de electricidad. Las herramientas eléctricas tienen como
característica principal el voltaje con el cual trabajan, incluso existen
herramientas eléctricas que no solo trabajan con la corriente proveniente del
tendido eléctrico sino que pueden operar en base a la energía almacenada en
baterías.

Las herramientas motoras funcionan a base de un motor que posee cierta


potencia, poseen además un pequeño tanque para el combustible y hay algunas
que hasta necesita aceite. Con la avanzada tecnología actual, se han desarrollado
herramientas que pueden trabajar a base de electricidad y a base de energía
motora. Y ya se encuentran disponibles en mucha ferretería a pesar de su
elevado costo.

4) Una cátedra tiene como equipo docente un responsable y un conjunto de entre 1


y 4 auxiliares. Para aprobar la materia, cada alumno debe superar las 3 instancias
de evaluación previstas: 1 parcial (que puede ser recuperado), 1 trabajo práctico
y examen final. La cátedra lleva un registro de fecha y resultado de cada una de
las evaluaciones realizadas por los alumnos.

Además de estos dos datos, para los trabajos prácticos se guarda información
respecto al retraso en la fecha de entrega (si lo hubiera) y para los exámenes
finales en qué mesa y en qué llamados el alumno rindió el examen.

Programación Orientada a Objetos y declaración de clases


Para los siguientes ejercicios se quiere que identifique:
a) Clases existentes.
b) Atributos y métodos de la clase(s).
c) Declaración de la clase.

1) Especifique una clase que represente productos con las siguientes propiedades:
• Tienen un código que los identifica de manera única y que se asigna
automáticamente en el momento de la creación.
• Guardan la descripción y el precio sin IVA.
• Todos los productos comparten el mismo IVA (supongamos el 12%), que
puede variar en función de las decisiones del gobierno.
• Los productos se dan de alta en una fecha concreta (la fecha de creación)
lo que nos servirá para conocer cuáles son los productos más novedosos o
más recientes.
La clase Producto debe proporcionar los métodos adecuados consulta de los
atributos, modificación de los atributos y para calcular el precio de venta del
producto que se obtiene sumándole al precio el IVA correspondiente.

2) En un modelo de una empresa hay definida una clase empleado que tienen los
siguientes atributos: nombre, edad, departamento. Se necesita extender el
concepto empleado para abarcar nuevos tipos de empleados, a saber:
• Empleado temporal, del que nos interesa saber la fecha de alta y de baja en
la empresa.
• Empleado por horas. Nos interesa el precio de la hora trabajada, y el número
de horas que ha trabajado este mes. El primero es un dato fijo, mientras el
segundo varía todos los meses.
• Empleado fijo. Debemos añadir a la información que almacenamos sobre el
año de alta en la empresa.

Además debemos añadir a todos los empleados la funcionalidad de cálculo del


sueldo con las siguientes consideraciones:
• En los empleados temporales el sueldo mensual es fijo.
• En los empleados fijos el sueldo es el resultado de sumarle a la base un
complemento anual fijo multiplicado por el número de años en la empresa.
• En los empleados por horas el sueldo se calcula multiplicando su sueldo por
hora por el número de horas de este mes.

3) Se desea llevar un control del estado de una cuenta corriente; la cuenta corriente
está caracterizada por su saldo y sobre ella se pueden realizar tres tipos de
operaciones:
• Saldo: devuelve el saldo de la cuenta (puede ser negativo).
• Depósito (cantidad): ingresa en la cuenta una cantidad de dinero.
• Retiro (cantidad): saca de la cuenta una determinada cantidad de dinero.

Suponga que la cuenta inicialmente tiene un saldo igual a cero. Escriba una clase
Cuenta Corriente que implemente las funcionalidades descritas.

GDAyP

También podría gustarte