Ingeniería en Informática Sede Arica Docente: Mitchel Videla Calderón – Ing. Civil en Informática
Evaluación N2 Taller de Programación 1 Nombr ombre e Puntos Nota
: __ ______ ______ ____ ____ ___ _____ _____ ____ _______ ______ ___ _____ ______ ____ ____ ____ ____ ____ ___ __ : _______ : _______
INSTRUCCIONES:
La evaluación consta de 106 puntos con una exigencia de un 60% para e l 4.0 Al finalizar su evaluación, envíe los programas con su nombre como comentario al inicio de cada archivo a la dirección
[email protected]
1. Codifique un programa en java que despliegue la siguiente iteración: (40 puntos)
1 … … …
1 5
1 4 25
1 3 16 125
1 2 9 64 625
1 3 16 125
1 4 25
1 5
1
Para desplegar esta iteración deberá primero cargar estos elementos en un arreglo de arreglos (matriz) en donde el primer componente del arreglo apuntará a un arreglo que contendrá los elementos de la primera fila a desplegar; el segundo elemento apuntará a los elementos de la segunda fila y así sucesivamente hasta llagar el componente n-ésimo (valor que deberá solicitarse por pantalla), una vez llenada esta matriz deberá utilizar esta misma para desplegar los valores. Restricciones: - Debe pedir por pantalla el número tope de la iteración (valor n-ésimo). A modo de referencia el tope del ejemplo es 5. No puede puede desplegar desplegar los valores valores sin sin primero primero cargarlos cargarlos al arregl arreglo o de arreglos. arreglos. Los valore valores s que se desplieg desplieguen uen deben deben ser ser obteni obtenidos dos desde desde el arreglo arreglo de de arreglos arreglos.. - Los valores mostrados corresponden a un cálculo matemático, no puede desplegar los valo valore res s dire direct ctam ament ente, e, util utilic ice e la libr librer ería ía mate matemá máti tica ca para para real realiz izar ar los los cálc cálcul ulos os respectivos. Utilic Utilice e el caráct carácter er “\t” “\t” para para tabula tabularr las separ separaci acione ones s entre entre números números..
Ingeniería en Informática Sede Arica Docente: Mitchel Videla Calderón – Ing. Civil en Informática
2. Considere el siguiente diagrama de clases:
Persona # Long rut # String nombre # String direccion + Persona(Long, String, String)
Paciente - MyDate fechaIngreso - String diagnostico
Doctor - String especialidad
+ Doctor (Long, String, String, String) + Paciente (Long, String, String, MyDate) + diagnosticar(String)
1..1
MyDate - Long day - Long month - Long year + MyDate (Long, Long, Long) + setDay(Long) + setMonth(Long) + setYear(Long) + Long getDay() + Long getMonth() + Long getYear()
Ingeniería en Informática Sede Arica Docente: Mitchel Videla Calderón – Ing. Civil en Informática
1. Codifique en Java las clases “Persona”, “Paciente”, “Doctor” y “MyDate”. Escriba
correctamente las variables miembros, codifique sólo los encabezados de los métodos de cada clase. Considere tipo de acceso, valor de retorno, etc. Nótese los tipos de datos “Long” es distinto de “long”. (4 puntos) 2. Codifique el constructor de la clase “Persona”. Este constructor recibirá como parámetros
el rut de la persona, su nombre y su dirección. (3 puntos) 3. Codifique el constructor de la clase “Paciente”. Este constructor establecerá la variable
miembro “fechaIngreso” con el último valor que viene como parámetro. Además, los tres primeros parámetros “rut”, “nombre” y “dirección” servirán para invocar al constructor de la clase padre. (5 puntos) 4. Codifique el método “diagnosticar” de la clase “Paciente”. Este método deberá asignar el
parámetro a la variable miembro de la clase. (1 puntos) 5. Codifique el constructor de la clase “Doctor”. Este constructor establecerá la variable
miembro “especialidad” con el último valor que viene como parámetro. Además, los tres primeros parámetros “rut”, “nombre” y “dirección” servirán para llamar al constructor de la clase padre. (5 puntos) 6. Codifique el constructor de la clase “MyDate”. Este constructor establecerá las variables
miembro “day”, “month” y “year”. Deberá verificar los datos que vienen como parámetros de modo que la fecha sea válida, puede incorporar un método de verificación si lo considera necesario. Si la verificación falla, establezca la fecha a “01-01-1900” (10 puntos) 7. Codifique los métodos “set” de la clase MyDate. Verifique que el valor que viene como
parámetro sea válido como fecha. (4 puntos) 8. Codifique los métodos “get” de la clase MyDate. (3 puntos)
9. Codifique el programa principal que realice lo siguiente: a. Declare e instancie 1 doctor. (2 puntos) b. Declare e instancie 1 paciente. (2 puntos) c. Asigne el diagnóstico al paciente. (6 puntos) d. Visualice la fecha de ingreso del paciente. Haga los cambios necesarios a la clase
correspondiente teniendo en cuenta de mantener el encapsulamiento. (8 puntos) e. Modifique la fecha de ingreso del paciente. Haga los cambios necesarios a la clase correspondiente teniendo en cuenta de mantener el encapsulamiento. (8 puntos) f. Despliegue el diagnóstico del paciente. Haga los cambios necesarios a la clase correspondiente teniendo en cuenta de mantener el encapsulamiento. (5 puntos)