Modulo Operator
Parte de la sección Fundamentos del Journey de Java de Coddy — lección 16 de 73.
El operador módulo % devuelve el resto de una división. En Java, se utiliza con una sintaxis sencilla:
result = dividend % divisor;- dividend: El número que se está dividiendo.
- divisor: El número que divide al dividendo.
- result: El resto de la división.
Por ejemplo:
result = 10 % 3;Aquí, 10 se divide por 3. El 3 cabe en el 10 tres veces, con un resto de 1. Por lo tanto, result será 1.
¿Qué pasa si el dividendo es menor que el divisor? En ese caso, el divisor cabe 0 veces, por lo que el resto es simplemente el propio dividendo. Por ejemplo, 2 % 3 es igual a 2, porque el 3 cabe en el 2 cero veces y sobran 2.
Normalmente, el módulo se utiliza para comprobar si un número es par o impar:
- Si un número es par, al dividirlo por 2 el resto será 0.
- Si un número es impar, al dividirlo por 2 el resto será 1.
Al usar el operador módulo con números de punto flotante (doubles), funciona de manera similar a los enteros pero mantiene la precisión decimal. Por ejemplo:
double result = 5.5 % 2.0;
// el resultado es 1.5Así es como funciona: 2.0 cabe en 5.5 dos veces (4.0), y el resto es 1.5 (5.5 - 4.0 = 1.5).
Nota: los valores double se almacenan como aproximaciones, por lo que algunos restos se imprimen con un pequeño error. Por ejemplo, 5.2 % 2.0 imprime 1.2000000000000002 en lugar de 1.2. Ese es un comportamiento normal de punto flotante, no un error en su código.
Otro ejemplo:
double result = 7.5 % 3.5;
// result es 0.5Desafío
PrincipianteEscribe un código que inicialice tres variables, a (int), b (double) y c (int) con los valores 9, 2.6, y 11 (respectivamente).
Después de eso, inicializa las siguientes variables:
d (int)que contendrá el resultado deamódulo2e (int)que contendrá el resultado deamódulo3f (double)que contendrá el resultado debmódulo1.5g (double)que contendrá el resultado debmódulo3.9h (int)que contendrá el resultado decmódulo10
Revisa el resultado y observa cómo diferentes dividendos y divisores afectan el resultado.
Pruébalo tú mismo
public class Main {
public static void main(String[] args) {
// Escribe tu código debajo
// No cambies la línea de abajo
System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("c = " + c);
System.out.println("d = " + d);
System.out.println("e = " + e);
System.out.println("f = " + f);
System.out.println("g = " + g);
System.out.println("h = " + h);
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operators Part 1
Arithmetic OperatorsModulo OperatorIncrement/DecrementPost Increment/DecrementArithmetic ShortcutsComparison OperatorsString Comparison5Operators Part 2
Logical Operators Part 1Logical Operators Part 2Recap - Simple LogicLogical Operators Part 3Logical Operators Part 43Variables Part 2
ConstantsNaming ConventionsRecap - Initialize VariablesType Casting Part 1Type Casting Part 26Decision Making
If StatementIf - ElseSwitch StatementTernary OperatorRecap - If ElseNested If - Else