2

Click here to load reader

Tarea2 Semana 21al25 Sept 2015

Embed Size (px)

DESCRIPTION

dfdfdfdfdffdf

Citation preview

Page 1: Tarea2 Semana 21al25 Sept 2015

BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD DE CIENCIAS DE LA COMPUTACIÓN CURSO DE PROGRAMACIÓN II – OTOÑO 2015

TAREA 2: Semana del 21 al 25 de septiembre de 2015

Propone: Dr. Mario Rossainz López

Para cada uno de los siguientes problemas realice lo siguiente:

1. La especificación lógica del TDA (cabecera, definición y operaciones).

2. El diagrama de clases (a detalle) correspondiente en UML

3. La implementación correspondiente en JAVA junto con el programa principal que

muestre el uso del TDA

PROBLEMA 1: Escriba una clase padre llamada Obrero y dos clases hijas: ObreroPorHora y

ObreroAsalariado. Cualquier obrero tiene un nombre y un sueldo. Escriba un método

calculaPago(int hrs) que calcule el pago semanal de cualquier obrero. Un ObreroPorHora

le pagan por hora/trabajo de forma que el cálculo de su salario es el producto del número

de horas que trabajó en una semana por el sueldo hora/trabajo si el número de horas no

es mayor que 40, pero si el número de horas es mayor que 40, las horas extras de trabajo

se le pagan al doble. El sueldo semanal del ObreroAsalariado se calcula de igual forma

que en el caso del ObreroPorHora, sólo que las horas extras se le pagan (aquellas que

excedan a 40) igual que una hora normal de trabajo. Proteja las variables de cada clase de

forma que sólo puedan ser accesadas por funciones públicas y utilice el constructor de la

clase padre en los constructores de las clases hijas para reutilizar código. Implemente el

programa principal y pruebe la aplicación.

PROBLEMA 2: Un reloj digital consta de dos paneles digitales (pantallas), uno para horas y

otro para minutos. Cada panel digital contiene un valor entre cero y el límite superior (23

y 59). El usuario del programa debe poder incrementar el reloj, incrementando el panel de

minutos y cuando sea necesario el panel de horas. El usuario también ha de poder poner

en hora el reloj a un valor dado. Por último, el usuario puede pedir al reloj que muestre su

valor mostrando el valor de cada panel; es decir, debe tener la posibilidad de acceder a

visualizar hora. Use dicho reloj digital para implementar un cronómetro donde además

pueda cronometrar el tiempo de alguna actividad iniciando, parando y volviendo a

reiniciar el cronómetro. Finalmente utilice dicho cronómetro para cronometrar el tiempo

Page 2: Tarea2 Semana 21al25 Sept 2015

que tarda una persona en realizar un cuestionario de 10 preguntas de opción múltiple

relativo al tema de “Programación Orientada a Objetos”. Una vez que el usuario termina

el cuestionario el sistema deberá informar de su calificación y cuanto tiempo tardó en

responderlo.

PROBLEMA 3: Una caja fuerte se utiliza para guardar cosas de valor. Los valores que un

usuario puede guardar son: dinero (en denominaciones de 20, 50 y 100 dolares) y joyas

que pueden ser relojes y collares. Para abrir o cerrar la caja fuerte se utiliza un cerrojo con

combinación que tiene las siguientes propiedades básicas: la combinación (una secuencia

de tres números) está oculta; el cerrojo se puede abrir proporcionando la combinación; y

esta se puede cambiar, pero solamente por alguien que conoce la combinación actual.

FECHA DE ENTREGA

Martes 29 de septiembre de 2015

FORMA DE ENTREGA

En forma digital enviado por correo electrónico en un archivo .ZIP. Cada ejercicio deberá

estar bien organizado dentro de su carpeta correspondiente la cual deberá tener como

contenido: El documento de la especificación lógica, el diagrama de clases en formato PDF

o como imagen y el o los programas correspondientes (tanto código fuente como código

compilado).

NOTA:

Esta tarea podrá ser realizada en equipos máximo de 5 personas y deberá enviarse un

correo por equipo con la lista de nombres y matrículas que lo integran.