Java; comparar número mayor, número medio, y número menor con objetos y ternarios. [Programación Orientada a Objetos.]
En esta ocasión haremos un clásico de la programación sin
dudas hace un año esto fue un rompedero de cabeza para mí, pero viendo un post
en facebook me anime a hacerlo nuevamente. Este fue el resultado:
Para esto, te pediré que crees dos clases (respetando
mayúsculas y minúsculas) dentro del paquete que estás trabajando.
La primera clase se debe llamar Main
La segunda clase se debe llamar Operaciones
Primero tenemos nuestro main que se ve así:
- package (Aqui va el nombre de tu paquete);
- /**
- * @author King (Arturo R)
- */
- public class Main {
- public static void main(String[] args) {
- Operaciones iniciar = new Operaciones();
- iniciar.pedirDatos();
- iniciar.comparar();
- }
- }
Lo primero que se hace, es crear un objeto llamado "iniciar" de la clase operaciones. Una vez que tenemos nuestro objeto de la clase operaciones, ya podemos usar todos los métodos de esa clase.
Y aquí tenemos nuestra clase "operaciones", que se
ve así:
- package (aqui va el nombre de tu paquete, sin parentesis);
- import java.util.Scanner;
- /*
- @author King (Arturo Ramirez) [https://programadorn00b.blogspot.com/]
- */
- public class Operaciones {
- Scanner input = new Scanner(System.in);
- //atributos
- private int numero1;
- private int numero2;
- private int numero3;
- //metodo para pedir datos.
- public void pedirDatos() {
- System.out.println("Ingresa tu primer número.");
- this.numero1 = input.nextInt();
- System.out.println("Ingresa tu segundo número.");
- this.numero2 = input.nextInt();
- System.out.println("Ingresa tu tercer número.");
- this.numero3 = input.nextInt();
- }//Fin del metodo pedirDatos.
- //metodo para comparar numeros
- public void comparar() {
- int numeroMayor = (int) (((this.numero1 > this.numero2) && this.numero1 > this.numero3) ? this.numero1
- : (this.numero2 > this.numero3) && (this.numero2 > this.numero1) ? this.numero2
- : (this.numero3 > this.numero2) && (this.numero3 > this.numero1) ? this.numero3 : this.numero3);
- int numeroMenor = (int) ((this.numero1 < this.numero2) && this.numero1 < this.numero3 ? this.numero1
- : (this.numero2 < this.numero1) && (this.numero2 < this.numero3) ? this.numero2
- : (this.numero3 < this.numero2) && (this.numero3 < this.numero1) ? this.numero3 : this.numero3);
- int numeroMediano = (int) (((this.numero1 < numeroMayor)) && (this.numero1 > numeroMenor) ? this.numero1
- : (this.numero2 < numeroMayor) && (this.numero2 > numeroMenor) ? this.numero2
- : (this.numero3 < numeroMayor) && (this.numero3 > numeroMenor) ? this.numero3 : this.numero3);
- System.out.println(
- "\nEl número mayor es: " + numeroMayor
- + "\nEl número mediano es: " + numeroMediano
- + "\nEl número menor es: " + numeroMenor);
- }//Fin del metodo "Comparar".
- //Fin de la clase Operaciones
En la clase operaciones comenzamos declarando atributos
privados, debido a que estos atributos solo se usaran dentro de la clase
"operaciones".
Despues creamos un metodo para pedir datos que se llama
"pedirdatos".
Finalmente creamos un metodo que es capáz de comparar los
números mayores, medios y menores.
La variable númeromayor, compara primero si 1 es mayor a 2 y
3, después si 2 es mayor a 1 y 3. Y finalmente si 3 es mayor a 1 y 2.
Después la variable numeromenor, compara si 1 es menor a 2 y
3, luego si 2 es menor a 1 y 3, y finalmente si 3, es menor a 1 y 2.
La variable numeromediano es donde muchos se podrían
confundir, pues aquí la comparación cambia un poco.
Primero se compara si numero 1, es menor que el numero
mayor, y numero 1 es mayor al numero menor.
Después se compara si numero 2, es menor que el número mayor
y si número 2 es mayor al número menor.
Finalmente se compara si numero 3, es menor al número mayor,
y si numero 3 es mayor al número menor.
===nota importante===
La sintaxis del ternario va así: (condiciones) ? Valor
si es cierto: valor si es falso;
El ternario se usa directamente sobre variables, outputs, e
incluso retornos. Saberlo usar correctamente le puede dar una vuelta a tu forma de programar.
Comentarios
Publicar un comentario