Está en la página 1de 4

EVALUACIÓN Nº3

Resultados de Aprendizaje:
Diseñar un software mediante el lenguaje de programación Java, con el fin de comprender el paradigma de
la Programación Orientada a Objetos CORRECTAMENTE.

De acuerdo a lo anterior, se espera evidenciar que los estudiantes:


1. Implementar el modelo de la programación orientada a objetos en el software.
2. Implementar los flujos de control adecuados.
3. Implementar sobrecarga, sobreescritura, uso de clases envoltorio cuando corresponda.

Esta evaluación será calificada de manera grupal, por lo tanto, deben de hacer equipos de 2 a 3
personas máximo.

● Instrucciones

Teniendo en cuenta su experiencia en la confección de una calculadora, ahora se le solicita confeccionar


una nueva versión exclusiva para operar con números Complejos. Su calculadora en esta nueva versión y
a través de un menú debe permitir sumar, restar, multiplicar y/o dividir números complejos imitando la forma
natural que tenemos de operar con los números reales. El menú debe ofrecer sus operaciones por tiempo
indefinido o hasta que el usuario elija finalizar y terminar el programa.

Por ejemplo, podemos sumar dos números reales como sigue:


2 + 3 entregaría 5
Entonces “imitando” el comportamiento anterior al sumar dos números complejos seria:
numeroComplejo1.sumar(numeroComplejo2) entregaría otroNumeroComplejo que representa el
resultado de la suma.

Considere que cualquier número complejo se representa por un par de números reales (a, b) en donde el
primer componente a indica la parte real, y el segundo componente b indica la parte imaginaria,
representada por otro real. Como buen informático, investigue de ser necesario. Las operaciones que
deberá confeccionar son:
sumar dos números complejos.
(a, b) + (c, d) = (a + c, b + d);
restar dos números complejos.
(a, b) - (c, d) = (a - c, b - d);
multiplicar dos números complejos:
(a, b) * (c, d) = (a*c – b*d, a*d + b*c)
dividir dos números complejos:
(a, b) / (c, d) = ((a*c + b*d) / (c2 + d2) , (b*c – a*d) / (c2 + d2))

 Requerimientos

Implemente su código acorde a las directrices siguientes:

- Su código debe usar de manera correcta el paradigma de la Orientación a Objetos.
- Parta confeccionando una Clase que modele ser un numero Complejo (Par de números
reales). Llámela Complejo y defina sus atributos.
- Confeccione un constructor de modo que permita la inicialización de la parte real y la parte
imaginaria del número complejo a cero.
- Agregue los métodos de instancia necesarios para los mecanismos de sumar, restar,
multiplicar y dividir. Estos métodos deben devolver un objeto( instancia) de la clase
Complejo, es decir un tipo Complejo.
- Confeccione otro constructor de modo que permita la inicialización de la parte real y la parte
imaginaria del número complejo con valores(números) reales cualesquiera
respectivamente.
- Confeccione los métodos setter’s y/o getter’s que considere realmente necesarios.
- Sobreescriba(Override) el método toString() para mostrar los números complejos en la
pantalla de una forma “más natural”. Entiéndase como par ordenado, por ejemplo, el
número complejo nulo uNumeroComplejoNulo= (0,0), el numero complejo neutro
uNumeroComplejoNeutro= (1,0), etc.
- Trabaje de forma correcta el modelo orientado a objeto haciendo uso de más de una clase,
que operan de forma colaborativa (colaboración entre clases).
- Comente mínimamente su código a través de uso de comentarios explicativos de lo más
relevante o medular.
- Agregue los comentarios que indiquen el por qué su código seria 100% Orientado a
Objetos. ( Recuerde: Claseinstancia(s)mensaje(s) ).

- A modo de ejemplo para los números complejos UnComplejo1= (1.0, 1.0) y UnComplejo2=
(2.0, 2.0) su programa debe permitir operaciones tales como,
-
(1.0, 1.0) + (2.0, 2.0) = (3.0, 3.0)
(1.0, 1.0) - (2.0, 2.0) = (-1.0, -1.0)
(1.0, 1.0) / (2.0, 2.0) = (0.5, 0.0)
(1.0, 1.0) * (2.0, 2.0) = (0.0, 4.0)

En otras palabras, tu código debe reflejar en Java, algo como

UnComplejo1.sumar(UnComplejo2)
UnComplejo1.restar(UnComplejo2)
UnComplejo1.multiplicar(UnComplejo2)
UnComplejo1.dividir(UnComplejo2)

La aplicación comienza desplegando un menú para luego permitir ingresar y definir los
valores de números reales que se usaran para cada parte del numero complejo (por
ejemplo, para UnComplejo1, UnComplejo2, etc.) y después decidir qué operación realizar
con ellos (sumar, restar, multiplicar o dividir) para que finalmente entregue el resultado
correcto.

 Recursos Base:

 Unidades respectivas.
 Aula Virtual.

 Formato de entrega

- Comprima los archivos java que implementan este set de requerimientos y nómbrela de la
siguiente manera: TareaX.UX.Nombre1.Apellido1. Nombrar a los integrantes del equipo.

JAVA AVANZADO - Evaluación N°3


CIISA Departamento Online
Rúbrica de Evaluación - Revisión
PUNTAJE
INDICADORES Insuficiente Bueno Excelente
<60% <80% 100%
No Compila Compila con problemas Compila
Compila
0 7 10
Despliega un menú distinto al Despliega el menú requerido y
No despliega el menú requerido.
 requerido. funcional.
0 2 5
No muestra resultados correctos Muestra resultados correctos pero Muestra resultados correctos
 y con el formato sin el formato con el formato
requerido. requerido. requerido.
0 2 5

No implementa la estructura de Implementa una estructura de Implementa la estructura de


menu, pero que satisface menu requerida que satisface
 menu solicitada. parcialmente lo requerido. lo requerido.

0 2 5

Trabaja con dos clases permitiendo Trabaja con dos o más clases
Trabaja con una sola clase y sin la colaboración entre clases de permitiendo la colaboración
 colaboración entre clases forma mínima. entre clases de manera optima

0 2 5
La forma de ingreso no es La forma de ingreso es funcional, La forma de ingreso es
funcional, o no la implementa de pero no la implementa de acuerdo funcional y de acuerdo a lo
 acuerdo a lo requerido a lo requerido. requerido
0 5 10

Sin comentarios Muestra comentarios, pero no Muestra comentarios acorde


 de acuerdo a lo requerido. según lo requerido. a lo requerido.

0 7 10

Implementa métodos de instancia


Implementa métodos de
No implementa métodos de instancia según lo requerido y
 instancia acorde a lo requerido los aplica correctamente
. .
0 10 15
Crea y usa más de un
 Crea y usa un solo constructor constructor adecuadamente
No crea constructores.
adecuadamente.
0 10 15
Sobreescribe método y lo usa
 Sobreescribe método. adecuadamente
No sobreescribe ningún método

0 10 15
El código es desordenado y de
El código es desordenado y de El código es ordenado y de
Orden y difícil lectura, pero se logra
difícil lectura. fácil lectura.
Simpleza comprender.
0 3 5
SUMA PUNTAJE 60 100
JAVA AVANZADO- Evaluación N°3
CIISA Departamento Online

También podría gustarte