0% encontró este documento útil (0 votos)
300 vistas4 páginas

Ejerciciosresueltosdelcapitulodeinterfaces

El documento presenta tres ejercicios sobre programación orientada a objetos en Java que involucran interfaces. El primer ejercicio pide construir una clase ArrayReales que implemente la interfaz Estadisticas para obtener estadísticas básicas de un arreglo double. El segundo ejercicio pide construir una clase Math3 que extienda a Math y implemente la interfaz Extremos para encontrar extremos en arreglos. El tercer ejercicio pide construir una interfaz Relaciones y una clase que la implemente para comparar objetos.

Cargado por

Neluxka Sesma
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
300 vistas4 páginas

Ejerciciosresueltosdelcapitulodeinterfaces

El documento presenta tres ejercicios sobre programación orientada a objetos en Java que involucran interfaces. El primer ejercicio pide construir una clase ArrayReales que implemente la interfaz Estadisticas para obtener estadísticas básicas de un arreglo double. El segundo ejercicio pide construir una clase Math3 que extienda a Math y implemente la interfaz Extremos para encontrar extremos en arreglos. El tercer ejercicio pide construir una interfaz Relaciones y una clase que la implemente para comparar objetos.

Cargado por

Neluxka Sesma
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 4

Programacin orientada a objetos con Java

197

Ejercicios resueltos del Captulo de Interfaces 1) Construir una clase ArrayReales que declare un atributo de tipo double[] y que implemente una interfaz llamada Estadisticas. El contenido de esta interfaz es el siguiente:
public interface Estadisticas { double minimo(); double maximo(); double sumatorio(); }

2) Construir una clase final Math3 que ample las declaraciones de mtodos estticos de la clase Math y que implemente una interfaz llamada Extremos compilada con el siguiente cdigo fuente:
public interface Extremos { int min(int [] a); int max(int [] a); double min(double [] a); double max(double [] a); }

3) Construir una interfaz Relaciones (y posteriormente una clase que la implemente) que incluya los siguientes mtodos:
// Devuelve verdadero si a es mayor que b boolean esMayor(Object b) ; // Devuelve verdadero si a es menor que b boolean esMenor(Object b) ; // Devuelve verdadero si a es igual que b boolean esIgual(Object b) ;

198

A. Garca-Beltrn y J.M. Arranz

Soluciones a los ejercicios propuestos del Captulo de Interfaces 1) Clase ArrayReales que declara un atributo de tipo double[] e implementa la interfaz Estadisticas.
/** * Clase ArrayReales * A. Garcia-Beltran - diciembre, 2007 * public class ArrayReales implements Estadisticas { double [] valor; public void asignar() { for (int i=0; i<valor.length; i++) { valor[i] = Math.random(); } } public double minimo() { double menor = valor[0]; for (int i=0; i<valor.length; i++) { if (menor>valor[i]) { menor=valor[i]; } } return menor; } public double maximo() { double mayor = valor[0]; for (int i=0; i<valor.length; i++) { if (mayor<valor[i]) { mayor=valor[i]; } } return mayor; } public double sumatorio() { double suma =0.0; for (int i=0; i<valor.length; i++) { suma+=valor[i]; } return suma; } public void imprimir() { for (int i=0; i<valor.length; i++) { System.out.println("x["+i+"]="+valor[i]); } } }

Ejemplo de uso de la clase ArrayReales:


/** * Programa PruebaArrayReales * A. Garcia-Beltran - diciembre, 2007 */ public class PruebaArrayReales { public static void main (String [] args) { ArrayReales x = new ArrayReales(); x.valor = new double[5]; x.asignar(); x.imprimir(); System.out.println("Minimo : " + x.minimo()); System.out.println("Maximo : " + x.maximo()); System.out.println("Sumatorio: " + x.sumatorio()); } }

Programacin orientada a objetos con Java

199

Ejemplo de salida por pantalla de la ejecucin del cdigo anterior:


$>java PruebaArrayReales x[0]=0.6257870038198547 x[1]=0.6362298582780569 x[2]=0.1032244210543346 x[3]=0.7885078556272651 x[4]=0.3466167914826589 Minimo : 0.1032244210543346 Maximo : 0.7885078556272651 Sumatorio: 2.5003659302621704

2) Clase final Math3 que ampla las declaraciones de mtodos estticos de la clase Math y que implementa la interfaz llamada Extremos.
public final class Math3 implements Extremos { public int min(int [] a) { int menor = a[0]; for (int i=1; i<a.length; i++) { if (menor>a[i]) { menor=a[i]; } } return menor; } public int max(int [] a) { int mayor = a[0]; for (int i=1; i<a.length; i++) { if (mayor<a[i]) { mayor=a[i]; } } return mayor; } public double min(double [] a) { double menor = a[0]; for (int i=1; i<a.length; i++) { if (menor>a[i]) { menor=a[i]; } } return menor; } public double max(double [] a) { double mayor = a[0]; for (int i=1; i<a.length; i++) { if (mayor<a[i]) { mayor=a[i]; } } return mayor; } }

Ejemplo de uso de la clase Math3:


/** * Programa PruebaMath3 * A. Garcia-Beltran - diciembre, 2007 */ public class PruebaMath3 { public static void main(String [] args) { // Para emplear los metodos de la clase Math3 es necesario // crear una instancia de la clase Math3 Math3 aux = new Math3(); int [] n = new int[12]; for (int i=0; i<n.length; i++) { n[i] = (int) (100*Math.random()+1); System.out.println("n["+i+"] = "+n[i]);

200

A. Garca-Beltrn y J.M. Arranz

} System.out.println("Minimo System.out.println("Maximo } }

: " + aux.min(n)); : " + aux.max(n));

Ejemplo de salida por pantalla de la ejecucin del cdigo anterior:


$>java PruebaMath3 n[0] = 48 n[1] = 26 n[2] = 66 n[3] = 100 n[4] = 97 n[5] = 100 n[6] = 57 n[7] = 2 n[8] = 98 n[9] = 37 n[10] = 73 n[11] = 87 Minimo : 2 Maximo : 100

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy