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 remainder después de la división. Cuando divides un number entre otro, el módulo te da lo que queda.
<?php
echo 10 % 3; // Salida: 1
?>Aquí, 10 dividido entre 3 es igual a 3 con un resto de 1. El operador módulo devuelve ese resto.
Un uso común de módulo es comprobar si un número es even u odd. Al dividir por 2, los únicos remainder posibles son 0 o 1, así que, si un number dividido por 2 no tiene remainder, es even; si el remainder es 1, es odd:
<?php
$number = 8;
echo $number % 2; // Salida: 0 (par)
$number = 7;
echo $number % 2; // Salida: 1 (impar)
?>Esto solo funciona para comprobar si es par/impar porque dividir por 2 siempre da un resto de 0 o 1. Con otros divisores, el resto puede tener cualquier valor desde 0 hasta uno menos que el divisor.
Más ejemplos para ayudarte a comprender el patrón:
<?php
echo 15 % 4; // Salida: 3 (15 = 4*3 + 3)
echo 20 % 5; // Salida: 0 (20 = 5*4 + 0)
$dividend = 17;
$divisor = 5;
echo $dividend % $divisor; // Salida: 2 (17 = 5*3 + 2)
?>Desafío
FácilRead two numbers from input: a dividend and a divisor.
Calculate and print the remainder when the first number is divided by the second number.
Example:
If the inputs are 17 and 5, the output should be 2 (because 17 ÷ 5 = 3 with a remainder of 2).
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
// Mostrar 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 OperatorsPractica por tu cuenta: Compilador de PHP online