La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Diseño de tipos: clase PolinomioEntero Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 8 Versión 1.0.3.

Presentaciones similares


Presentación del tema: "Diseño de tipos: clase PolinomioEntero Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 8 Versión 1.0.3."— Transcripción de la presentación:

1 Diseño de tipos: clase PolinomioEntero Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 8 Versión 1.0.3

2 Práctica 8: Diseño de tipos: clase PolinomioEntero Objetivo  Implementar un tipo de datos PolinomioEntero usando la clase Vector de java.util.  Entender la utilidad de los tipos genéricos.

3 Práctica 8: Diseño de tipos: clase PolinomioEntero Repaso de Polinomios  Dados el número natural n y los n+1 números reales o complejos a 0, a 1,…, a n (los llamados coeficientes) se define el polinomio p en la variable x como la función que hace corresponder al valor que tome x el valor p(x)=a 0 +a 1 x+a 2 x 2 +…+a n x n  La potencia más alta (en el ejemplo, 4) indica el grado del polinomio. Ejemplo: -3x 2 +5x 4 -9x+7 Los coeficientes son los números -3, 5, -9 y 7 de los términos de grado 2, 4, 1 y 0, respectivamente. (Nota: la representación de un polinomio no tiene por qué seguir ningún orden entre los términos) Ejemplo: -3x 2 +5x 4 -9x+7 Los coeficientes son los números -3, 5, -9 y 7 de los términos de grado 2, 4, 1 y 0, respectivamente. (Nota: la representación de un polinomio no tiene por qué seguir ningún orden entre los términos)

4 Práctica 8: Diseño de tipos: clase PolinomioEntero Conceptos propios de la POO  ¿Tipo MUTABLE o INMUTABLE?  Mutable: los objetos de ese tipo pueden ver modificadas sus propiedades. Ejemplos: tipo Punto o tipo Racional.  Inmutable: las propiedades de los objetos no pueden cambiar. Ejemplos: tipo String o tipo Integer.  Nosotros vamos a diseñar el tipo PolinomioEntero como mutable => ¿Esto qué implica a efectos prácticos?  Paralelamente, desarrollaremos una CLASE DE UTILIDAD, que contendrá métodos estáticos a través de los que realizar operaciones que no modifiquen el objeto que invoca.

5 Práctica 8: Diseño de tipos: clase PolinomioEntero Preparación de la práctica (I)  Definición del tipo PolinomioEntero  Propiedades:  Coeficientes, Vector de tipo Integer, consultable y modificable. La posición en el Vector determina el grado del término. Es decir, un 7 en la primera posición del Vector significa el término independiente ó 7x 0, un -9 en la segunda posición indica -9x, y así sucesivamente.  Criterio de Igualdad: coeficientes iguales.  Representación como cadena: entre paréntesis una secuencia de términos, donde cada término es representado por el coeficiente seguido del literal “X”, el símbolo “^” y el grado correspondiente. Ejemplo: (7X^0 -9X^1 -3X^2 0X^3 5X^4). public interface PolinomioEntero extends Copiable

6 Práctica 8: Diseño de tipos: clase PolinomioEntero Preparación de la práctica (II)  Otros métodos además de los relativos a los atributos:  getGrado, devuelve un Integer con el grado del polinomio.  getCoeficiente, recibe un Integer con un grado (mayor o igual que cero y menor o igual que el grado del polinomio) y devuelve el coeficiente correspondiente a ese grado.  setCoeficiente, recibe un Integer g con un grado (mayor o igual que cero y menor o igual que el grado del polinomio) y un valor de tipo Integer con el nuevo coeficiente de la potencia g.  añadeCoeficiente, recibe un nuevo coeficiente para añadir con un grado uno mayor que el actual grado del polinomio.  sumaCoeficiente, recibe dos valores Integer (r y g) y realiza la suma del coeficiente de la potencia g con el valor r.  sumar, recibe un PolinomioEntero y lo suma al objeto que invoca usando el método sumaCoeficiente anterior.

7 Práctica 8: Diseño de tipos: clase PolinomioEntero Pasos a la hora de realizar la práctica 1. Crear un directorio como espacio de trabajo llamado WS_Practica08_ 2. Descargar el fichero Practica08Alumno y descomprimirlo en el directorio anterior 3. Arrancar Eclipse escogiendo el directorio WS_Practica08_ como Workspace 4. Importar el proyecto mediante la opción File->Import->Existing Projects into Workspace del menú general. 5. Seleccionar la carpeta Practica08Alumno en el campo Select root directory y pulsar Finish. 6. Añadir las clases e interfaces a los paquetes correspondientes. 7. Comprobar que el código Java escrito no tiene errores de compilación. 8. Ejecutar el proyecto y comprobar que tampoco hay errores en tiempo de ejecución y que el programa funciona como se espera.


Descargar ppt "Diseño de tipos: clase PolinomioEntero Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 8 Versión 1.0.3."

Presentaciones similares


Anuncios Google