Laboratorio 2 Encapsulamiento, Herencia e Interfaces • Cada uno de los atributos definidos deben ser private o protected. Utilice métodos public para acceder a los atributos privados • Debe entregar solamente los archivos .java en un disquete o CD • Los grupos deben ser de máximo dos personas •Fecha de entrega: Jueves 22 de Marzo Problema 1 Manejo de funciones Defina la siguiente interfaz: Funcion public double evaluarFuncion(double x) public double derivarFuncion(double x) public double integrarFuncion(double a, double b) Esta interfaz define las firmas de las operaciones básicas sobre una Función, evaluar, derivar e integrar. evaluarFuncion recibe como argumento el valor x sobre el cual se evaluará la función. derivarFuncion permite derivar la función y evaluar la derivada obtenida en el valor x. integrarFuncion recibe los limites superior a e inferior b, sobre los cuales se integrará la función. Define las siguientes clases que implementan la interfaz Función: FuncionCuadratica int a, b, c; FuncionCuadratica(int a, int b, int c) public double evaluarFuncion(double x) public double derivarFuncion(double x) public double integrarFuncion(double a, double b) La clase FuncionCuadratica tienen como atributos a, b y c, que corresponden a las constantes en la función cuadrática f(x)=ax2 + bx + c. Estos valores se pasan en el constructor. La clase debe implementar los métodos para el caso específico de una función cuadrática. FuncionCubica int a, b, c, d; FuncionCubica(int a, int b, int c, int d) public double evaluarFuncion(double x) public double derivarFuncion(double x) public double integrarFuncion(double a, double b) La clase FuncionCubica tienen como atributos a, b, c y d, que corresponden a las constantes en la función cúbica f(x)=ax3 + bx2 + cx + d. Estos valores se pasan en el constructor. La clase debe implementar los métodos para el caso específico de una función cúbica. Desarrolle una aplicación donde use las clases FuncionCuadratica y FuncionCubica de tal manera que el usuario puede seleccionar inicialmente el tipo de función, cuadrática o cúbica. Luego, se deben solicitar los valores de las constantes. Posteriormente el usuario podrá seleccionar entre evaluar, derivar e integrar la función. Problema 2 Sistema para la facturación en la librería InterNACIONAL En una librería se vende Material bibliográfico tanto Impreso como Digital. Como parte del material impreso, la librería tiene Revistas y Libros, y como material digital se venden Documentales y Películas. Tenga en cuenta que los tipo de revistas que maneja la librería son científicas, farándula, deportes y política. Los libros se venden según un énfasis que puede ser matemáticas, filosofía o economía. El material digital se vende en formatos que pueden ser DVD, VCD, MPG o AVI y su duración se indica en minutos. Además, los tipos de documentales disponibles son histórico, novedades y científico. Finalmente, tenga en cuenta que las películas se clasifican de acuerdo a tres géneros drama, acción y terror. Se requiere que usted desarrolle una aplicación para calcular el total a pagar y el IVA correspondiente en cada venta. Para esto, usted debe inicialmente desarrollar la jerarquía que se presenta a continuación. MaterialLibreria protected String titulo; protected int añoPublicacion; private int precio; public MaterialLibreria(); public void modificarPrecio(int cuanto); public int obtenerPrecio(); Digital Impreso protected int duracion; protected String formato; protected int cantidadPaginas; public Impreso(); public int obtenerCantidadPaginas(); Revista protected String tipo; public Revista(); public double obtenerIVA(); public int obtenerPrecio(); public Digital(); public int obtenerDuracion(); public String obtenerFormato(); Libro protected String editorial; protected String enfasis; public Libro(); public String obtenerEditorial(); public String obtenerEnfasis(); public double obtenerIVA(); public int obtenerPrecio(); Documental Pelicula protected String tipo; protected String genero; public Documental(); public double obtenerIVA(); public int obtenerPrecio(); public Pelicula(); public double obtenerIVA(); public int obtenerPrecio(); El precio en cada venta y el valor del IVA se deben calcular de acuerdo a las siguientes reglas establecidas en la librería: PRECIO IVA (sobre el precio) Las revistas tienen un precio base de $5000. Si es de tipo política, se aumenta su precio $2000. Las revistas que tengan más de 50 páginas tienen un costo adicional de $1500. Las revistas de política tienen un 10% de IVA y las demás el 16%. Los libros tienen un precio base de $70000. Si es un libro de matemáticas se aumenta su precio en $30 por cada página después de las 300. Los libros de filosofía tienen un precio adicional de $10000 si son de la Editorial “Prentice Hall”, en cualquier otro caso se aumentan $20000. Los libros de economía tienen un costo adicional de $35000. Todos pagan 16%. El precio base para un documental es de $25000. Los documentales en formato DVD tienen un precio adicional de $25000 y en VCD de $10000. Los documentales históricos en formato AVI tienen un precio adicional de $12000 y los científicos en MPG de $8000. En cualquier caso, si la duración es mayor a 90 minutos se aumenta su precio en $10000. 16% para DVD y 10% en los demás casos. Las películas tienen un precio base de $20000. Las de drama y terror un valor adicional de $7000. Todos pagan 16%. Desarrolle una aplicación que le permita a un usuario indicar inicialmente el tipo de material que va comprar, Revista, Libro, Documental o Película. Según sea el caso, se solicita la información correspondiente. Posteriormente, se debe mostrar el valor a pagar y el IVA correspondiente.