Modulo Operator
Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 16 de 71.
El operador módulo (%) devuelve el resto después de la división. Cuando divides un número por otro, el módulo te da lo que sobra.
<?php
echo 10 % 3; // Outputs: 1
?>Aquí, 10 dividido por 3 da 3 con un resto de 1. El operador módulo devuelve ese resto.
Un uso común del módulo es verificar si un número es par o impar. Si un número dividido por 2 no tiene resto, es par. Porque estamos dividiendo por 2, los únicos restos posibles son 0 (par) o 1 (impar) — a diferencia de las operaciones de módulo generales, donde el resto puede ser cualquier valor desde 0 hasta el divisor menos 1.
<?php
$number = 8;
echo $number % 2; // Salida: 0 (par)
$number = 7;
echo $number % 2; // Salida: 1 (impar)
?>Más ejemplos para ayudarte a entender el patrón:
<?php
echo 15 % 4; // Salida: 3 (15 = 4*3 + 3)
echo 20 % 5; // Salida: 0 (20 = 5*4 + 0)
?>Desafío
FácilLee dos números de la entrada: un dividendo y un divisor.
Calcula e imprime el resto cuando el primer número se divide por el segundo número.
Ejemplo:
Si las entradas son 17 y 5, la salida debería ser 2 (porque 17 ÷ 5 = 3 con un resto de 2).
Hoja de referencia
El operador módulo (%) devuelve el resto después de la división:
<?php
echo 10 % 3; // Outputs: 1
?>Caso de uso común - verificar si un número es par o impar:
<?php
$number = 8;
echo $number % 2; // Outputs: 0 (even)
$number = 7;
echo $number % 2; // Outputs: 1 (odd)
?>Ejemplos adicionales:
<?php
echo 15 % 4; // Outputs: 3 (15 = 4*3 + 3)
echo 20 % 5; // Outputs: 0 (20 = 5*4 + 0)
?>Pruébalo tú mismo
<?php
// Leer la entrada
$dividend = intval(fgets(STDIN));
$divisor = intval(fgets(STDIN));
// TODO: Escribe tu código debajo para calcular el resto
// Imprimir el resultado
echo $remainder;
?>Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators