package Basicos;

public class Leccion3 {
    public static void main(String[] args) {
        //OPERADORES ARITMÉTICOS.
        //  + (Adición / Suma).
        //  - (Resta).
        //  * Multiplicación.
        //  / División.
        //  % Módulo.

        int a=10;
        int b=4;
        int resultado;
        char caracter;
        String tipoOperacion, operacion; //Declaración múltiple.

        resultado = a+b;
        caracter = '+';
        tipoOperacion = "SUMA";
        operacion = "a"+caracter+"b = ";
        System.out.println(tipoOperacion+" → "+operacion+resultado);

        resultado = a-b;
        caracter = '-';
        tipoOperacion = "RESTA";
        operacion = "a"+caracter+"b = ";
        System.out.println(tipoOperacion+" → "+operacion+resultado);

        resultado = a*b;
        caracter = '*';
        tipoOperacion = "MULTIPLICACIÓN";
        operacion = "a"+caracter+"b = ";
        System.out.println(tipoOperacion+" → "+operacion+resultado);

        resultado = a/b;
        caracter = '/';
        tipoOperacion = "DIVISIÓN";
        operacion = "a"+caracter+"b = ";
        System.out.println(tipoOperacion+" → "+operacion+resultado);

        resultado = a%b;
        caracter = '%';
        tipoOperacion = "MÓDULO";
        operacion = "a"+caracter+"b = ";
        System.out.println(tipoOperacion+" → "+operacion+resultado);

        //OPERADORES RELACIONALES
        //Definición: Son los operadores que se utilizan para comparar 2 valores.

        //  == (igual a ) a == b (¡CUIDADO! Diferencia entre operador de asingación '=' y de comparación '==')
        //  != (No igual a)
        //  > (Mayor que)
        //  < (Menor que)
        //  >= (Mayor igual que)
        //  <= (Menor igual que)

        System.out.println("a"+"=="+"b → "+(a==b));
        System.out.println("a"+">"+"b → "+(a>b));
        System.out.println("a"+"<"+"b → "+(a<b));

        //OPERADORES LÓGICOS (PostPuesto en CONDICIONALES LECCIÓN 4)

        //OPERADORES DE ASIGNACIÓN
        //Los operadores de asignación se utilizan para asignar valores a las variables.

        //  = (Asignación simple)
        //  += (Añadir y asignar)
        //  -= (Restar y asignar)
        //  *= (Multiplica y asigna)
        //  = (Divide y asigna)
        //  %= (Módulo y asignar)

        //Queremos que a valga su valor + 2 unidades.
        //a = a+2; //OK
        System.out.println("Valor de *a* antes de la asignación y adición "+a);
        a+=2;
        System.out.println("Valor de *a* después de la asignación y adición "+a);
        // a++ == a+=1 == a=a+1 [3 Formas de hacer lo mismo]

        //OPERADORES UNARIOS
        //a++ Incremento.
        //a-- Decremento.

    }
}
