diff --git a/Roadmap/01 - OPERADORES Y ESTRUCTURAS DE CONTROL/java/rocha30.java b/Roadmap/01 - OPERADORES Y ESTRUCTURAS DE CONTROL/java/rocha30.java new file mode 100644 index 0000000000..522f127c81 --- /dev/null +++ b/Roadmap/01 - OPERADORES Y ESTRUCTURAS DE CONTROL/java/rocha30.java @@ -0,0 +1,194 @@ +/** + * Solución del reto #01 #01 OPERADORES Y ESTRUCTURAS DE CONTROL + * + * @author rocha30 + */ + +public class rocha30 { + + + public static void main(String[] args) { + /*Operadores aritméicos: estos pueden ser aplicados sobre números enteros o decimales (float) + * De estos hay dos tipos, que son los binarios y los unarios + */ + + //Operadores aritméticos binarios. + /* + * Suma (+) + * Resta (-) + * Multiplicación (*) + * División (/) + * Módulo (%) (Valor absoluto |x|) + */ + + int a = 10; + int b = 3; + + System.out.println("Operadores aritméticos en binario."); + System.out.println("Suma: " + (a+b)); + System.out.println("Resta: "+ (a-b)); + System.out.println("Multiplicación: " + (a*b)); + System.out.println("División: " + (a/b)); + System.out.println("Modulo (valor absoluto): " + (a%b)); + + System.out.println(); + + /* + * Operadores unarios: + * Mantiene el signo del operando (+) + * Le cambia el signo del operando (-) + * Autoincremento de valor (++) + * Autodrcremento de valor (--) + */ + + System.out.println("\nOperadores unarios. "); + System.out.println("Mantener el signo: " + (+b)); + System.out.println("Cambiar el signo : "+ (-b)); + System.out.println("Autoincremento : " + (++b)); + System.out.println("Autodecremento : " + (--b)); + System.out.println(); + + + + /*Operadores relacionales: para hacer comparaciones. + * Mayor que (>) + * Mayor igual que (>=) + * Menor que (<) + * Menor igual que <= + * Igual que (==) + * Distinto de (!=) + */ + + System.out.println("\nOperadores relacionales: "); + System.out.println("¿3 es mayor que 10?" + (b>a)); + System.out.println("¿3 es mayor o igual que 10?" + (b>=a)); + System.out.println("¿3 es menor que 10?" + (b>: Desplaza cada bit a la derecha + * <<: Desplaza bits a la izquierda + * >>>: Desplaza bits a la derecha sin signo + */ + + System.out.println("\nOperadores de bits "); + + System.out.println("a : " + Integer.toBinaryString(a)); + System.out.println("b : " + Integer.toBinaryString(b)); + + System.out.println("\n b AND a: " + Integer.toBinaryString(a&b)); + System.out.println(" b OR a : " + Integer.toBinaryString(a|b)); + System.out.println(" b XOR a: " + Integer.toBinaryString(a^b)); + System.out.println("Complemento de a = " + Integer.toBinaryString(~a)); + System.out.println("Complemento de b = " + Integer.toBinaryString(~b)); + System.out.println("Desplazamiento de bits de a a la derecha de b : " + Integer.toBinaryString(a>>b)); + System.out.println("Desplazamiento de bits de a a la izquierda de b: " + Integer.toBinaryString(a<>>b)); + + + + /* + * Estructura switch + * sirve para verificar cada caso dependiendo de la variable que se le ingrese + */ + + int dia = 3; + switch (dia) { + case 1: + System.out.println("\nLunes "); + + break; + case 2: + System.out.println("\nMartes"); + break; + case 3 : + System.out.println("\nMiercoles"); + break; + case 4: + System.out.println("\nJueves"); + break; + case 5: + System.out.println("\nViernes"); + break; + case 6: + System.out.println("\nSabado"); + break; + case 7: + System.out.println("\nDomingo"); + break; + + default: + System.out.println("\nEl numero del dia de la semana no es valido"); + break; + } + /* DIFICULTAD EXTRA (opcional): + * Crea un programa que imprima por consola todos los números comprendidos + * entre 10 y 55 (incluidos), pares, y que no son ni el 16 ni múltiplos de 3. + * + * Seguro que al revisar detenidamente las posibilidades has descubierto algo nuevo. + */ + System.out.println("\n--------------------------"); + System.out.println(" \n Programa extra: "); + System.out.println("---------------------------"); + System.out.println("\n Estos son los numeros: "); + + for (int h = 10; h<=55; h++){ + if (h%2==0 && h!= 16 && h%3!=0){ + System.out.println(h); + } + } + + + + + } +}