Hola compañero, bienvenido al primer ejercicio
Empecemos con un problema sencillo, pon
de este tutorial. Ya que has termin...
Empecemos con un problema sencillo, pon
mucha atención al enunciado…
Se desea manejar una lista de robots. Cada robot tiene un
número y un porcentaje de vida. El número de elementos
de la lis...
Bueno veamos la solución.
Sencillo ¿verdad?
Bueno veamos la solución.
Esta clase nos permitirá guardar
Para no crear uno manualmente,
También sin tener que función
Para esto utilizaremos la qu...
Esta clase nos permitirá guardar
Para no crear uno manualmente,
También sin tener que función
Para esto utilizaremos la as...
Esta clase nos permitirá guardar
Para no crear uno manualmente,
También sin tener que función
Para esto utilizaremos la as...
Esta clase nos permitirá guardar
También sin tener que función
Para esto utilizaremos la asignar
elementosse nos pide gene...
También se nos pide generar
Para esto utilizaremos la función
números aleatorios.
Random de la clase Math.
ArrayList
Para esto utilizaremos la función
Random de la clase Math.
ArrayList
Para esto utilizaremos la función
Random de la clase Math.
ArrayList
Math.Random
Utilizaremos a interfaz
Ahora vamos la definir un
Comparable con el fin de
constructor que reciba como
sobreescribir los m...
Utilizaremos a interfaz
Ahora vamos la definir un
Comparable con el fin de
constructor que reciba como
sobreescribir los m...
Utilizaremos a interfaz
Ahora vamos la definir un
Comparable con el fin de
constructor que reciba como
sobreescribir los m...
Ahora vamos a definir un
constructor que reciba como
De acuerdo alel número y
parámetros problema los
Para esto utilizarem...
Ahora vamos a definir un
constructor que reciba como
De acuerdo alel número y
parámetros problema los
Para esto utilizarem...
Ahora vamos a definir un
constructor que reciba como
parámetros el número y
Para esto utilizaremos la función
porcentajeVi...
Ahora vamos a definir un
constructor que reciba como
parámetros el número y
Para esto utilizaremos la función
porcentajeVi...
Ya que los atributos son privados
Como el problema también nos
necesitamos un par de métodos
pide imprimir los datos del R...
Ya que los atributos son privados
Como el problema también nos
necesitamos un par de métodos
pide imprimir los datos del R...
Como el problema también nos
pide imprimir los datos del Robot
vamos a sobreescribir el método
toString() para conseguirlo...
Como el problema también nos
pide imprimir los datos del Robot
vamos a sobreescribir el método
toString() para conseguirlo...
Para esto vamos a sobreescribir el
Finalmente, necesitamos un
método compareTo que recibe
método que nos permita realizar
...
Para esto vamos a sobreescribir el
método compareTo que recibe
como parámetro un objeto de
tipo Object.
Para esto vamos a sobreescribir el
método compareTo que recibe
como parámetro un objeto de
tipo Object.
@Override//Sobree...
El problema menciona que el
número de elementos a incluir es
un número aleatorio clasea5la 10,
Ya tenemos nuestra entre cl...
El problema menciona que el
número de elementos a incluir es
un número aleatorio entre clase
Como vamos a utilizar laa5la ...
El problema menciona que el
número de elementos a incluir es
un número aleatorio entre clase
Como vamos a utilizar laa5la ...
El problema menciona que el
número de elementos a incluir es
un número aleatorio entre 5la 10,
Ahora procederemos a y
crea...
El problema menciona que el
número de elementos a incluir es
un número aleatorio entre 5la 10,
Ahora procederemos a y
crea...
El problema menciona que el
número de elementos a incluir es
un número aleatorio entre 5 y 10,
por lo tanto vamos a genera...
El problema menciona que el
número de elementos a incluir es
un número aleatorio entre 5 y 10,
por lo tanto vamos a genera...
A continuación vamos a llamar al
método a imprimir la lista
Ahora vamos sort de la clase de
Collections y le enviaremos la...
A continuación vamos a llamar al
método a imprimir la lista
Ahora vamos sort de la clase de
Collections y le enviaremos la...
Ahora vamos a imprimir la lista de
Robots
//Ordenamos la lista de robots
Collections.sort. Este método usara el
metodo so...
Ahora vamos a imprimir la lista de
Robots
//Ordenamos la lista de robots
Collections.sort. Este método usara el
metodo so...
Vamos a proceder ahora a
calcular el número de Robots con
porcentaje de vida mayor a 50 e
imprimiremos el resultado.
Vamos a proceder ahora a
calcular el número de Robots con
porcentaje de vida mayor a 50 e
imprimiremos el resultado.
//Re...
Por último se mostrarán los 3
números de los últimos robots con
mayor porcentaje de Vida
//Se imprimiran los numeros de los 3
ultimos robots con mayor porcentaje de vida
Por último se mostrarán los 3
números de...
Utilizando JCreator ejecutamos
nuestro main y obtenemos la
siguiente salida en pantalla.
Esto fue todo por ahora, espero
Nos vemos en el siguiente
que la solución de este ejercicio
ejercicio. Hasta pronto.
te ha...
Nos vemos en el siguiente
ejercicio. Hasta pronto.
POO Unidad 2: Clases y objetos Ejercicio 1
of 45

POO Unidad 2: Clases y objetos Ejercicio 1

Published on: Mar 4, 2016
Published in: Education      
Source: www.slideshare.net


Transcripts - POO Unidad 2: Clases y objetos Ejercicio 1

  • 1. Hola compañero, bienvenido al primer ejercicio Empecemos con un problema sencillo, pon de este tutorial. Ya que has terminado de estudiar mucha atención al enunciado… la unidad número 2, es momento de poner en práctica todo lo aprendido.
  • 2. Empecemos con un problema sencillo, pon mucha atención al enunciado…
  • 3. Se desea manejar una lista de robots. Cada robot tiene un número y un porcentaje de vida. El número de elementos de la lista será un valor aleatorio entre 5 y 10. El porcentaje de vida de cada ROBOT será un valor aleatorio entre 1 y 100. Se pide construir una aplicación en java que permita cumplir con la siguiente funcionalidad: 1. Imprimir la lista de robot ordenada por porcentaje de vida de los robots. Al principio de la lista DEBEN estar los robots con menos porcentaje de vida. 2. Imprimir la cantidad de robot que tiene más del 50% de vida. 3. Imprimir el número de los TRES robots que tienen mayor porcentaje de vida.
  • 4. Bueno veamos la solución. Sencillo ¿verdad?
  • 5. Bueno veamos la solución.
  • 6. Esta clase nos permitirá guardar Para no crear uno manualmente, También sin tener que función Para esto utilizaremos la que El problema pide generar elementosse nossolicita asignar usaremos la clase ArrayList de números aleatorios. Random de la un número manejemos clase Math. necesariamenteun arreglo. fijo Java. de elementos.
  • 7. Esta clase nos permitirá guardar Para no crear uno manualmente, También sin tener que función Para esto utilizaremos la asignar elementosse nos pide generar usaremos la clase ArrayList de números aleatorios. Random de la clase Math. necesariamente un número fijo Java. de elementos.
  • 8. Esta clase nos permitirá guardar Para no crear uno manualmente, También sin tener que función Para esto utilizaremos la asignar elementosse nos pide generar usaremos la clase ArrayList de números aleatorios. Random de la clase Math. necesariamente un número fijo Java. de elementos. ArrayList
  • 9. Esta clase nos permitirá guardar También sin tener que función Para esto utilizaremos la asignar elementosse nos pide generar números aleatorios. Random de la clase Math. necesariamente un número fijo de elementos. ArrayList
  • 10. También se nos pide generar Para esto utilizaremos la función números aleatorios. Random de la clase Math. ArrayList
  • 11. Para esto utilizaremos la función Random de la clase Math. ArrayList
  • 12. Para esto utilizaremos la función Random de la clase Math. ArrayList Math.Random
  • 13. Utilizaremos a interfaz Ahora vamos la definir un Comparable con el fin de constructor que reciba como sobreescribir los métodos De acuerdo alel número y parámetros problema los Para esto utilizaremos la función Ahora vamos a definir nuestra toString() para mostrar los datos atributos de nuestra clase Robot porcentajeVida y, haciendo uso Random de la clase Math. clase Robot. del de la referencia this, seránrobot y CompareTo para número y porcentajeVida realizar las comparaciones inicializaremos los atributos necesarias entre los objetos Robot correspondientes.
  • 14. Utilizaremos a interfaz Ahora vamos la definir un Comparable con el fin de constructor que reciba como sobreescribir los métodos De acuerdo alel número y parámetros problema los Para esto utilizaremos la función toString() para mostrar los datos atributos de nuestra clase Robot porcentajeVida y, haciendo uso Random de la clase Math. del de la referencia this, seránrobot y CompareTo para número y porcentajeVida realizar las comparaciones inicializaremos los atributos necesarias entre los objetos Robot correspondientes.
  • 15. Utilizaremos a interfaz Ahora vamos la definir un Comparable con el fin de constructor que reciba como sobreescribir los métodos De acuerdo alel número y parámetros problema los Para esto utilizaremos la función toString() para mostrar los datos atributos de nuestra clase Robot porcentajeVida y, haciendo uso Random de la clase Math. del de la referencia this, seránrobot y CompareTo para número y porcentajeVida realizar las comparaciones inicializaremos los atributos necesarias entre los objetos Robot correspondientes. public class Robot implements { Comparable
  • 16. Ahora vamos a definir un constructor que reciba como De acuerdo alel número y parámetros problema los Para esto utilizaremos la función atributos de nuestra clase Robot porcentajeVida y, haciendo uso Random de la clase Math. serán de la referencia this, número y porcentajeVida inicializaremos los atributos correspondientes. public class Robot implements { Comparable
  • 17. Ahora vamos a definir un constructor que reciba como De acuerdo alel número y parámetros problema los Para esto utilizaremos la función atributos de nuestra clase Robot porcentajeVida y, haciendo uso Random de la clase Math. serán de la referencia this, número y porcentajeVida inicializaremos los atributos correspondientes. public class Robot implements { private int numero; private int procentajeVida; Comparable
  • 18. Ahora vamos a definir un constructor que reciba como parámetros el número y Para esto utilizaremos la función porcentajeVida y, haciendo uso Random de la clase Math. de la referencia this, inicializaremos los atributos correspondientes. public class Robot implements { private int numero; private int procentajeVida; Comparable
  • 19. Ahora vamos a definir un constructor que reciba como parámetros el número y Para esto utilizaremos la función porcentajeVida y, haciendo uso Random de la clase Math. de la referencia this, inicializaremos los atributos correspondientes. public class Robot implements { Comparable private int numero; private int procentajeVida; public Robot(int numero,int procentajeVida) { this.numero=numero; this.procentajeVida=procentajeVida; }
  • 20. Ya que los atributos son privados Como el problema también nos necesitamos un par de métodos pide imprimir los datos del Robot que nos devuelvan los valores vamos a sobreescribir el método correspondientes a número y toString() para conseguirlo. porcentajeVida
  • 21. Ya que los atributos son privados Como el problema también nos necesitamos un par de métodos pide imprimir los datos del Robot que nos devuelvan los valores vamos a sobreescribir el método correspondientes a número y toString() para conseguirlo. porcentajeVida public int getNumero() { return numero; } public int getPorcentajeVida() { return procentajeVida; }
  • 22. Como el problema también nos pide imprimir los datos del Robot vamos a sobreescribir el método toString() para conseguirlo. public int getNumero() { return numero; } public int getPorcentajeVida() { return procentajeVida; }
  • 23. Como el problema también nos pide imprimir los datos del Robot vamos a sobreescribir el método toString() para conseguirlo. public int getNumero() { return numero; } public int getPorcentajeVida() { return procentajeVida; } @Override public String toString() { return "Numero: "+this.numero+“ Porcentaje Vida: "+this.procentajeVida+”n”; }
  • 24. Para esto vamos a sobreescribir el Finalmente, necesitamos un método compareTo que recibe método que nos permita realizar como parámetro un los objetos comparaciones entre objeto de tipo Object. de tipo robot.
  • 25. Para esto vamos a sobreescribir el método compareTo que recibe como parámetro un objeto de tipo Object.
  • 26. Para esto vamos a sobreescribir el método compareTo que recibe como parámetro un objeto de tipo Object. @Override//Sobreescribiremos el metodo compareTo public int compareTo(Object t) { //convertimos el objeto t en un objeto de //tipo Robot Robot ro=(Robot)t; return this.getPorcentajeVida()ro.getPorcentajeVida(); } }
  • 27. El problema menciona que el número de elementos a incluir es un número aleatorio clasea5la 10, Ya tenemos nuestra entre clase Como vamos a utilizar la Robot, Ahora procederemos y ArrayList, es necesarioarreglo de creación devamos a generarlo por lo tanto nuestro importar la ahora vamos a definir nuestro con Math.Random y después a main para probarla librería java.Util Robots. realizar un for para llenar la lista con el método add
  • 28. El problema menciona que el número de elementos a incluir es un número aleatorio entre clase Como vamos a utilizar laa5la 10, Ahora procederemos y ArrayList, es necesarioarreglo de creación devamos a generarlo por lo tanto nuestro importar la con Math.Random y después a librería java.Util Robots. realizar un for para llenar la lista con el método add
  • 29. El problema menciona que el número de elementos a incluir es un número aleatorio entre clase Como vamos a utilizar laa5la 10, Ahora procederemos y ArrayList, es necesarioarreglo de creación devamos a generarlo por lo tanto nuestro importar la con Math.Random y después a librería java.Util Robots. realizar un for para llenar la lista con el método add import java.util.*; public class Main { public static void main(String []ar) {
  • 30. El problema menciona que el número de elementos a incluir es un número aleatorio entre 5la 10, Ahora procederemos a y creación devamos aarreglo de por lo tanto nuestro generarlo con Math.Random y después a Robots. realizar un for para llenar la lista con el método add import java.util.*; public class Main { public static void main(String []ar) {
  • 31. El problema menciona que el número de elementos a incluir es un número aleatorio entre 5la 10, Ahora procederemos a y creación devamos aarreglo de por lo tanto nuestro generarlo con Math.Random y después a Robots. realizar un for para llenar la lista con el método add import java.util.*; public class Main { public static void main(String []ar) { //Array de Robot ArrayList<Robot> lista = new ArrayList<Robot>();
  • 32. El problema menciona que el número de elementos a incluir es un número aleatorio entre 5 y 10, por lo tanto vamos a generarlo con Math.Random y después a realizar un for para llenar la lista con el método add import java.util.*; public class Main { public static void main(String []ar) { //Array de Robot ArrayList<Robot> lista = new ArrayList<Robot>();
  • 33. El problema menciona que el número de elementos a incluir es un número aleatorio entre 5 y 10, por lo tanto vamos a generarlo con Math.Random y después a realizar un for para llenar la lista con el método add import java.util.*; public class Main { public static void main(String []ar) { //Array de Robot ArrayList<Robot> lista = new ArrayList<Robot>(); //Generamos número de elementos a incluir int intervalo = (int) (Math.random()*(105+1)+5); for(int x=0; x<intervalo;x++) { lista.add(new Robot(x,(int)(Math.random()*(1001+1)+1)));//Generamos otro aleatorio para //el porcentaje de Vida }
  • 34. A continuación vamos a llamar al método a imprimir la lista Ahora vamos sort de la clase de Collections y le enviaremos la lista Robots de Robots
  • 35. A continuación vamos a llamar al método a imprimir la lista Ahora vamos sort de la clase de Collections y le enviaremos la lista Robots de Robots //Ordenamos la lista de robots Collections.sort. Este método usara el metodo sobreescrito compareTo en la clase Robot Collections.sort(lista);
  • 36. Ahora vamos a imprimir la lista de Robots //Ordenamos la lista de robots Collections.sort. Este método usara el metodo sobreescrito compareTo en la clase Robot Collections.sort(lista);
  • 37. Ahora vamos a imprimir la lista de Robots //Ordenamos la lista de robots Collections.sort. Este método usara el metodo sobreescrito compareTo en la clase Robot Collections.sort(lista); //Imprimimos la lista y llamamos al metodo toString el cual esta sobreescrito en la clase Robot System.out.println(lista.toString());
  • 38. Vamos a proceder ahora a calcular el número de Robots con porcentaje de vida mayor a 50 e imprimiremos el resultado.
  • 39. Vamos a proceder ahora a calcular el número de Robots con porcentaje de vida mayor a 50 e imprimiremos el resultado. //Recorremos la lista de robot y por cada porcentaje de vida mayor a 50 la variable cantidad se incrementa int cantidad=0; for(int x=0;x<lista.size();x++) { if(lista.get(x).getPorcentajeVida()>50) { cantidad++; } } //Imprimimos la cantidad de robots que tienen vida superior a 50 System.out.println("Vida superior al 50%"+cantidad);
  • 40. Por último se mostrarán los 3 números de los últimos robots con mayor porcentaje de Vida
  • 41. //Se imprimiran los numeros de los 3 ultimos robots con mayor porcentaje de vida Por último se mostrarán los 3 números de los últimos robots con mayor porcentaje de Vida System.out.println(lista.get(lista.s ize()-1).getNumero()+""+lista.get(lista.size()-2).getNumero()+""+lista.get(lista.size()-3).getNumero()); } }
  • 42. Utilizando JCreator ejecutamos nuestro main y obtenemos la siguiente salida en pantalla.
  • 43. Esto fue todo por ahora, espero Nos vemos en el siguiente que la solución de este ejercicio ejercicio. Hasta pronto. te haya sido clara y provechosa.
  • 44. Nos vemos en el siguiente ejercicio. Hasta pronto.